"エンジンと、動力の入出力が可能な第1モータと、車軸に連結された駆動軸と前記エンジンの出力軸と前記第1モータの回転軸とに3つの回転要素が接続されたプラネタリギヤと、前記駆動軸に動力を入出力する第2モータと、前記エンジンの回転数を検出する回転数検出手段と、前記エンジンを始動して前記エンジンを目標回転数と目標トルクとからなる目標運転ポイントで運転する要求がなされたとき、前記エンジンがクランキングされて始動されるよう前記エンジンと前記第1モータとを制御し、前記エンジンの始動を確認した始動確認タイミングから前記エンジンが前記目標運転ポイントで運転されるまでは前記エンジンの出力応答がむだ時間を有する一次遅れとしてのむだ時間一次遅れ系であるとみなして推定される前記エンジンの出力に基づいて前記第1モータを制御すると共に吸入空気量に対して目標空燃比となるよう前記エンジンを制御する制御手段と、を備えるハイブリッド車において、前記制御手段は、前記エンジンの出力応答が前記むだ時間一次遅れ系であるとみなして適正に前記第1モータと前記エンジンとが制御されたと仮定したときの前記エンジンの回転数としての適正制御回転数と前記回転数検出手段により検出される回転数との差分が小さくなる傾向に前記むだ時間と前記一次遅れの時定数とを学習する手段である、ことを特徴とするハイブリッド車。請求項1記載のハイブリッド車であって、前記制御手段は、前記始動確認タイミングから前記むだ時間による時間が経過したタイミング近傍の前記適正制御回転数と前記検出された回転数との差分の極大値であるむだ時間用極大値が第1の閾値以上となるときに前記むだ時間を学習し、前記始動確認タイミングから前記むだ時間と前記時定数とによる時間が経過したタイミング近傍の前記適正制御回転数と前記検出された回転数との差分の極大値である時定数用極大値が第2の閾値以上となるときに前記時定数を学習する手段である、ハイブリッド車。請求項2記載のハイブリッド車であって、前記制御手段は、前記むだ時間用極大値に予め定めた係数を乗じた値だけ変更することにより前記むだ時間を学習し、前記時定数用極大値に予め定めた係数を乗じた値だけ変更することにより前記時定数を学習する手段である、ハイブリッド車。請求項2記載のハイブリッド車であって、前記制御手段は、前記始動確認タイミングから前記エンジンの空気量負荷率が急増するまでの時間を前記むだ時間として学習し、前記空気量負荷率が急増したときから前記空気量負荷率が前記エンジンを前記目標運転ポイントで運転したときの空気量負荷率に対して1-1/e×100に相当する値となるまでの時間を前記時定数として学習する手段である、ハイブリッド車。上述のハイブリッド車では、駆動軸とエンジンの出力軸と第1モータの回転軸とがプラネタリギヤの3つの回転要素に接続されていることから、第1モータからトルクを出力すると共にこの第1モータからプラネタリギヤを介して駆動軸に作用するトルクを受け止めることにより、エンジンをモータリングクランキングして始動する。エンジンから出力されたトルクは、エンジンから出力されてプラネタリギヤを介して第1モータの回転軸に作用するトルクを第1モータによって受け止めることにより、駆動軸に出力する。エンジンを始動してエンジンからトルクを出力するときの第1モータから出力すべきトルクは、エンジンをモータリングクランキングするトルクからエンジンからのトルクを受け止めるトルクとなるため、その符号が反転する。このため、第1モータの駆動制御を適正に行なうことができないと、始動直後のエンジンの回転数上昇を遅延させたり、逆にエンジンが吹き上がってしまう場合が生じる。こうした課題に対して、エンジンの始動直後の出力応答がむだ時間を有する一次遅れであるとみなして第1モータを駆動制御することにより始動直後のエンジンの運転をスムーズに制御することも考えられているが、エンジンのシリンダとピストンとの摩擦の経年変化や潤滑オイルの性状や劣化程度によるエンジンのフリクションの変化、燃料噴射弁による燃料噴射量のバラツキや経年変化、スロットル開度のバラツキや経年変化による吸入空気量のバラツキや経年変化などにより、始動直後のエンジンの運転を適正に制御することができない場合が生じる。本発明のハイブリッド車は、駆動軸とエンジンの出力軸と第1モータの回転軸とがプラネタリギヤの3つの回転要素に接続されているハイブリッド車において、始動直後のエンジンの運転をより適正に制御することを主目的とする。本発明のハイブリッド車は、上述の主目的を達成するために以下の手段を採った。本発明のハイブリッド車は、エンジンと、動力の入出力が可能な第1モータと、車軸に連結された駆動軸と前記エンジンの出力軸と前記第1モータの回転軸とに3つの回転要素が接続されたプラネタリギヤと、前記駆動軸に動力を入出力する第2モータと、前記エンジンの回転数を検出する回転数検出手段と、前記エンジンを始動して前記エンジンを目標回転数と目標トルクとからなる目標運転ポイントで運転する要求がなされたとき、前記エンジンがクランキングされて始動されるよう前記エンジンと前記第1モータとを制御し、前記エンジンの始動を確認した始動確認タイミングから前記エンジンが前記目標運転ポイントで運転されるまでは前記エンジンの出力応答がむだ時間を有する一次遅れとしてのむだ時間一次遅れ系であるとみなして推定される前記エンジンの出力に基づいて前記第1モータを制御すると共に吸入空気量に対して目標空燃比となるよう前記エンジンを制御する制御手段と、を備えるハイブリッド車において、前記制御手段は、前記エンジンの出力の時間変化が前記むだ時間一次遅れ系であるとみなして適正に前記第1モータと前記エンジンとが制御されたと仮定したときの前記エンジンの回転数としての適正制御回転数と前記回転数検出手段により検出される回転数との差分が小さくなる傾向に前記むだ時間と前記一次遅れの時定数とを学習する手段である、ことを特徴とする。この本発明のハイブリッド車では、エンジンの始動を確認した始動確認タイミングからエンジンが目標運転ポイントで運転されるまではエンジンの出力応答がむだ時間を有する一次遅れむだ時間一次遅れ系であるとみなして推定されるエンジンの出力に基づいて第1モータを制御すると共に吸入空気量に対して目標空燃比となるようエンジンを制御する。そして、エンジンの出力応答がむだ時間一次遅れ系であるとみなして適正に第1モータとエンジンとが制御されたと仮定したときのエンジンの回転数としての適正制御回転数と回転数検出手段により検出されるエンジンの回転数との差分が小さくなる傾向に一次遅れ系におけるむだ時間と一次遅れの時定数とを学習する。したがって、エンジンのフリクションの変化や、燃料噴射弁による燃料噴射量のバラツキや経年変化、スロットル開度のバラツキや経年変化による吸入空気量のバラツキや経年変化が生じても、より適正なむだ時間と時定数とを用いて始動直後のエンジンの運転を制御することができる。この結果、始動直後のエンジンの運転を適正に制御できないことによって生じる不都合、例えば、始動直後のエンジンの回転数上昇が遅延したり、エンジンが吹き上がってしまうなどの不都合を抑制することができる。ここで、始動確認タイミングとしては、例えば、エンジンの完爆を確認したタイミングを用いることができる。目標運転ポイントは、例えば、アクセル開度や車速などに基づいてエンジンから出力すべきパワーを求め、このパワーをエンジンから出力することが可能なエンジンの回転数とトルクとからなる運転ポイントのうち振動や異音が生じない範囲内で最も効率がよい運転ポイントの回転数とトルクとを目標回転数と目標トルクとして求めることができる。目標空燃比は、吸入空気量に対する理論空燃比となる基本燃料噴射量に対してエンジンの冷却水の温度や吸入空気量の温度などによる補正が施された燃料噴射量によるものとしてその都度計算されるものを用いることができる。こうした本発明のハイブリッド車において、前記制御手段は、前記始動確認タイミングから前記むだ時間による時間が経過したタイミング近傍の前記適正制御回転数と前記検出された回転数との差分の極大値であるむだ時間用極大値が第1の閾値以上となるときに前記むだ時間を学習し、前記始動確認タイミングから前記むだ時間と前記時定数とによる時間が経過したタイミング近傍の前記適正制御回転数と前記検出された回転数との差分の極大値である時定数用極大値が第2の閾値以上となるときに前記時定数を学習する手段である、ものとすることもできる。こうすれば、むだ時間や時定数の学習が過剰に行なわれるのを抑制することができる。このむだ時間用極大値と時定数用極大値とを用いてむだ時間と時定数とを学習する態様の本発明のハイブリッド車において、前記制御手段は、前記むだ時間用極大値に予め定めた係数を乗じた値だけ変更することにより前記むだ時間を学習し、前記時定数用極大値に予め定めた係数を乗じた値だけ変更することにより前記時定数を学習する手段である、ものとすることもできるし、前記制御手段は、予め定めた第1の所定値だけ変更することにより前記むだ時間を学習し、予め定めた第2の所定値だけ変更することにより前記時定数を学習する手段である、ものとすることもできる。また、むだ時間用極大値と時定数用極大値とを用いてむだ時間と時定数とを学習する態様の本発明のハイブリッド車において、前記制御手段は、前記始動確認タイミングから前記エンジンの空気量負荷率が急増するまでの時間を前記むだ時間として学習し、前記空気量負荷率が急増したときから前記空気量負荷率が前記エンジンを前記目標運転ポイントで運転したときの空気量負荷率に対して1-1/e×100に相当する値となるまでの時間を前記時定数として学習する手段である、ここで、空気量負荷率は、エンジンの1サイクルあたりで吸入可能な空気量に対する1サイクルで実際に吸入される空気の容積の比を意味している。また、eは自然対数の底である。空気量負荷率の急増は、空気量負荷率の時間変化量が予め定めた閾値を超えているか否かによって判定することができる。次に、本発明を実施するための形態を実施例を用いて説明する。図1は、本発明の一実施例としてのハイブリッド自動車20の構成の概略を示す構成図である。実施例のハイブリッド自動車20は、図示するように、ガソリンや軽油などを燃料とするエンジン22と、エンジン22を駆動制御するエンジン用電子制御ユニット以下、エンジンECUという。24と、エンジン22のクランクシャフト26にキャリアが接続されると共に駆動輪38a,38bにデファレンシャルギヤ37を介して連結された駆動軸36にリングギヤが接続されたプラネタリギヤ30と、例えば同期発電電動機として構成されて回転子がプラネタリギヤ30のサンギヤに接続されたモータMG1と、例えば同期発電電動機として構成されて回転子が駆動軸36に接続されたモータMG2と、モータMG1,MG2を駆動するためのインバータ41,42と、モータMG1,MG2を駆動制御するモータ用電子制御ユニット以下、モータECUという。40と、インバータ41,42を介してモータMG1,MG2と電力をやりとりするバッテリ50と、バッテリ50を管理するバッテリ用電子制御ユニット以下、バッテリECUという。52と、車両全体を制御するハイブリッド用電子制御ユニット以下、HVECUという。70と、を備える。エンジン22は、図2に示すように、エアクリーナ122により清浄された空気をスロットルバルブ124を介して吸入すると共に燃料噴射弁126からガソリンを噴射して吸入された空気とガソリンとを混合し、この混合気を吸気バルブ128を介して燃料室に吸入し、点火プラグ130による電気火花によって爆発燃焼させて、そのエネルギにより押し下げられるピストン132の往復運動をクランクシャフト26の回転運動に変換する。エンジン22からの排気は、一酸化炭素COや炭化水素HC,窒素酸化物NOxの有害成分を浄化する浄化触媒三元触媒を有する浄化装置134を介して外気へ排出される。エンジンECU24は、CPU24aを中心とするマイクロプロセッサとして構成されており、CPU24aの他に処理プログラムを記憶するROM24bと、データを一時的に記憶するRAM24cと、図示しない入出力ポートおよび通信ポートとを備える。エンジンECU24には、エンジン22の状態を検出する種々のセンサからの信号、クランクシャフト26の回転位置を検出するクランクポジションセンサ140からのクランクポジションやエンジン22の冷却水の温度を検出する水温センサ142からの冷却水温,燃焼室内に取り付けられた圧力センサ143からの筒内圧力Pin,燃焼室へ吸排気を行なう吸気バルブ128や排気バルブを開閉するカムシャフトの回転位置を検出するカムポジションセンサ144からのカムポジション,スロットルバルブ124のポジションを検出するスロットルバルブポジションセンサ146からのスロットルポジション,吸気管に取り付けられたエアフローメータ148からの吸入空気量Qa,同じく吸気管に取り付けられた温度センサ149からの吸気温Ta,空燃比センサ135aからの空燃比AF,酸素センサ135bからの酸素信号などが入力ポートを介して入力されている。また、エンジンECU24からは、エンジン22を駆動するための種々の制御信号、例えば、燃料噴射弁126への駆動信号や、スロットルバルブ124のポジションを調節するスロットルモータ136への駆動信号、イグナイタと一体化されたイグニッションコイル138への制御信号、吸気バルブ128の開閉タイミングの変更可能な可変バルブタイミング機構150への制御信号などが出力ポートを介して出力されている。エンジンECU24は、HVECU70と通信しており、HVECU70からの制御信号によりエンジン22を運転制御すると共に必要に応じてエンジン22の運転状態に関するデータを出力する。なお、エンジンECU24は、クランクポジションセンサ140からのクランクポジションに基づいてクランクシャフト26の回転数、すなわち、エンジン22の回転数Neを演算したり、エアフローメータ148からの吸入空気量Qaとエンジン22の回転数Neとに基づいて空気量負荷率エンジン22の1サイクルあたりで吸入可能な空気量に対する1サイクルで実際に吸入される空気の容積の比KLを演算している。モータECU40は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に処理プログラムを記憶するROMやデータを一時的に記憶するRAM、入出力ポート、通信ポートを備える。モータECU40には、モータMG1,MG2を駆動制御するために必要な信号、例えばモータMG1,MG2の回転子の回転位置を検出する回転位置検出センサ43,44からの信号や図示しない電流センサにより検出されるモータMG1,MG2に印加される相電流などが入力ポートを介して入力されており、モータECU40からは、インバータ41,42の図示しないスイッチング素子をスイッチングするためのスイッチング制御信号が出力ポートを介して出力されている。また、モータECU40は、HVECU70と通信しており、HVECU70からの制御信号によってモータMG1,MG2を駆動制御すると共に必要に応じてモータMG1,MG2の運転状態に関するデータをHVECU70に出力する。なお、モータECU40は、回転位置検出センサ43,44からの信号に基づいてモータMG1,MG2の回転数Nm1,Nm2を演算している。バッテリECU52は、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に処理プログラムを記憶するROMやデータを一時的に記憶するRAM、入出力ポート、通信ポートを備える。バッテリECU52には、バッテリ50を管理するのに必要な信号、例えば、バッテリ50の端子間に設置された図示しない電圧センサからの端子間電圧,バッテリ50の出力端子に接続された電力ラインに取り付けられた図示しない電流センサからの充放電電流,バッテリ50に取り付けられた温度センサ51からのバッテリ温度Tbなどが入力されており、必要に応じてバッテリ50の状態に関するデータを通信によりHVECU70に送信する。また、バッテリECU52は、バッテリ50を管理するために電流センサにより検出された充放電電流の積算値に基づいてそのときのバッテリ50から放電可能な電力の容量の全容量の割合である蓄電割合SOCを演算したり、演算した蓄電割合SOCと電池温度Tbとに基づいてバッテリ50を充放電してもよい最大許容電力である入出力制限Win,Woutを演算している。HVECU70は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に処理プログラムを記憶するROMやデータを一時的に記憶するRAM、入出力ポート、通信ポートを備える。HVECU70には、イグニッションスイッチ80からのイグニッション信号,シフトレバー81の操作位置を検出するシフトポジションセンサ82からのシフトポジションSP,アクセルペダル83の踏み込み量を検出するアクセルペダルポジションセンサ84からのアクセル開度Acc,ブレーキペダル85の踏み込み量を検出するブレーキペダルポジションセンサ86からのブレーキペダルポジションBP,車速センサ88からの車速Vなどが入力ポートを介して入力されている。HVECU70は、前述したように、エンジンECU24やモータECU40,バッテリECU52と通信ポートを介して接続されており、エンジンECU24やモータECU40,バッテリECU52と各種制御信号やデータのやりとりを行なっている。こうして構成された実施例のハイブリッド自動車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は、モータ運転モードで運転している最中に、運転者によりアクセルペダル83が大きく踏み込まれて例えば、アクセル開度ACCが全開バッテリ50からの電力だけでは要求動力を賄うことができないときや、バッテリ50の蓄電割合SOCがエンジン運転モードに切り替えるために予め定められた閾値以下になったとき、その他、車両の状態がエンジン運転モードに切り替えるために予め定められた状態に至ったときに、エンジン22の始動が要求されたとして、エンジン22を始動してエンジン運転モードに移行する。また、実施例のハイブリッド自動車20は、エンジン運転モードで運転している最中に、バッテリ50の蓄電割合SOCが閾値以上で要求動力をバッテリ50からの放電で賄うことができるときや、運転者により図示しないモータ走行スイッチが押されたとき、その他、車両の状態がモータ運転モードに切り替えるために予め定められた状態に至ったときに、エンジン22の運転を停止してモータ運転モードに移行する。エンジン運転モードでは、HVECU70は、アクセルペダルポジションセンサ84からのアクセル開度Accと車速センサ88からの車速Vとに基づいて駆動軸36に出力すべき要求トルクTrを設定し、設定した要求トルクTrに駆動軸36の回転数Nr例えば、モータMG2の回転数Nm2や車速Vに換算係数を乗じて得られる回転数を乗じて走行に要求される走行用パワーPdrvを計算すると共に計算した走行用パワーPdrvからバッテリ50の蓄電割合SOCに基づいて得られるバッテリ50の充放電要求パワーPbバッテリ50から放電するときが正の値を減じてエンジン22から出力すべきパワーとしての目標パワーPeを設定する。そして、目標パワーPeを効率よくエンジン22から出力することができるエンジン22の回転数NeとトルクTeとの関係としての動作ライン例えば燃費最適動作ラインを用いてエンジン22の目標回転数Neと目標トルクTeとを設定し、バッテリ50の入出力制限Win,Woutの範囲内で、エンジン22の回転数Neが目標回転数Neとなるようにするための回転数フィードバック制御によりモータMG1から出力すべきトルクとしてのトルク指令Tm1を設定すると共にモータMG1をトルク指令Tm1で駆動したときにプラネタリギヤ30を介して駆動軸36に作用するトルクを要求トルクTrから減じてモータMG2のトルク指令Tm2を設定し、設定した目標回転数Neと目標トルクTeとについてはエンジンECU24に送信し、トルク指令Tm1,Tm2についてはモータECU40に送信する。目標回転数Neと目標トルクTeとを受信したエンジンECU24は、目標回転数Neと目標トルクTeとによってエンジン22が運転されるようエンジン22の吸入空気量制御や燃料噴射制御,点火制御などを行い、トルク指令Tm1,Tm2を受信したモータECU40は、モータMG1,MG2がトルク指令Tm1,Tm2で駆動されるようインバータ41,42のスイッチング素子のスイッチング制御を行なう。モータ運転モードでは、HVECU70は、モータMG1のトルク指令Tm1に値0を設定する共にバッテリ50の入出力制限Win,Woutの範囲内で要求トルクTrが駆動軸36に出力されるようモータMG2のトルク指令Tm2を設定してモータECU40に送信する。そして、トルク指令Tm1,Tm2を受信したモータECU40は、モータMG1,MG2がトルク指令Tm1,Tm2で駆動されるようインバータ41,42のスイッチング素子のスイッチング制御を行なう。次に、こうして構成された実施例のハイブリッド自動車20の動作、特にエンジン22を始動して目標回転数Neと目標トルクTeとからなる目標運転ポイントで運転するまでの動作について説明する。図3および図4は、HVECU70により実行される始動時制御ルーチンの一例を示すフローチャートであり、図5は始動直後のエンジン22の出力がむだ時間tdと時定数tcとを有する一次遅れ系であるとみなして制御する際のむだ時間tdと時定数tcとを学習するためにHVECU70により実行される学習処理ルーチンの一例を示すフローチャートである。以下、まず、図3および図4を用いて始動時制御について説明し、その後、図5を用いてむだ時間tdと時定数tcの学習処理について説明する。なお、図3および図4の始動時制御ルーチンは、エンジン22の始動が要請されたときに実行され、図5の学習処理ルーチンは、始動時制御ルーチンが終了した後に実行される。図3および図4の始動時制御ルーチンが実行されると、HVECU70のCPUは、まず、始動後にエンジン22から出力すべき目標パワーPeを設定すると共にステップS100、設定した目標パワーPeと燃費最適動作ラインとに基づいて始動後にエンジン22を運転すべき目標運転ポイントとしての目標回転数Neと目標トルクTeとを設定するステップS110。ここで、目標パワーPeは、アクセル開度Accに基づいて設定するものとしてもよいし、アクセル開度Accと車速Vとに基づいて設定するものとしてもよいし、車速Vに基づいて設定するものとしてもよい。燃費最適動作ラインの一例とこの燃費最適動作ラインを用いて目標回転数Neと目標トルクTeとを設定する様子の一例を図6に示す。図示するように、目標回転数Neと目標トルクTeは、燃費最適動作ラインと目標パワーPeNe×Teが一定の曲線との交点により求めることができる。続いて、アクセルペダルポジションセンサ84からのアクセル開度Accや車速センサ88からの車速V,モータMG1,MG2の回転数Nm1,Nm2,エンジン22の回転数Ne,バッテリ50の入出力制限Win,Woutなど制御に必要なデータを入力しステップS120、入力したアクセル開度Accと車速Vとに基づいて駆動軸36に出力すべき要求トルクTrを設定するステップS130。ここで、エンジン22の回転数Neは、クランクシャフト26に取り付けられたクランクポジションセンサからの信号に基づいて演算されたものをエンジンECU24から通信により入力するものとした。また、モータMG1,MG2の回転数Nm1,Nm2は、回転位置検出センサ43,44により検出されるモータMG1,MG2の回転子の回転位置に基づいて計算されたものをモータECU40から通信により入力するものとした。さらに、バッテリ50の入出力制限Win,Woutは、温度センサにより検出されたバッテリ50の電池温度とバッテリ50の蓄電割合SOCとに基づいて設定されたものをバッテリECU52から通信により入力するものとした。要求トルクTrは、実施例では、アクセル開度Accと車速Vと要求トルクTrとの関係を予め定めて要求トルク設定用マップとしてROMに記憶しておき、アクセル開度Accと車速Vとが与えられると記憶したマップから対応する要求トルクTrを導出して設定するものとした。要求トルク設定用マップの一例を図7に示す。続いて、エンジン22の回転数Neとエンジン22の始動を開始してからの経過時間t1とに基づいてモータMG1のトルク指令Tm1を設定するステップS140。エンジン22を始動する際のモータMG1のトルク指令Tm1とエンジン22の回転数Neと経過時間t1との関係の一例を含めて始動時のモータMG1のトルク指令Tm1とエンジン22の回転数Neとエンジン推定トルクTeestの時間変化の一例を図8に示す。図示するように、トルク指令Tm1は、実施例では、エンジン22の始動指示がなされた時間t10の直後からレート処理を用いて大きくなるトルクが設定され、これにより、エンジン22の回転数Neを迅速に増加させ、エンジン22の回転数Neが共振回転数帯を通過した時間t11以降にエンジン22を安定して回転数Nref例えば1000rpmや1200rpmなど以上でクランキングするためのトルクが設定され、エンジン22の回転数Neが回転数Nrefに至った時間t12からレート処理を用いて迅速に値0に至るよう小さくなるトルクが設定され、エンジン22の完爆が判定された時間t13時間t20まで値0のトルクが設定される。こうしてモータMG1のトルク指令Tm1を設定すると、エンジン22の回転数Neが回転数Nref以上となったか否かを判定しステップS150、エンジン22の始動指示がなされた直後などエンジン22の回転数Neが回転数Nref未満であるときには、キャンセルトルクTαに値0を設定するステップS160。ここで、キャンセルトルクTαは、エンジン22の初爆時に駆動軸36に生じるトルク変動をキャンセルするために、モータMG2から出力するトルクを補正するトルクとして設定されるものである。このため、エンジン22の初爆時以外には、値0に設定される。次に、バッテリ50の入出力制限Win,Woutと設定したモータMG1のトルク指令Tm1に現在のモータMG1の回転数Nm1を乗じて得られるモータMG1の消費電力発電電力との偏差をモータMG2の回転数Nm2で割ることによりモータMG2から出力してもよいトルクの上下限としてのトルク制限Tmin,Tmaxを次式1および式2により計算すると共にステップS190、要求トルクTrとトルク指令Tm1とプラネタリギヤ30のギヤ比ρサンギヤの歯数をリングギヤの歯数で割った値を用いてモータMG2から出力すべきトルクとしての仮モータトルクTm2tmpを式3により計算しステップS200、計算したトルク制限Tmin,Tmaxで仮モータトルクTm2tmpを制限した値にキャンセルトルクTαを加えたものをモータMG2のトルク指令Tm2として設定するステップS210。なお、上述の式3は、プラネタリギヤ30の回転要素に対する力学的な関係式であり、図示は省略するが、プラネタリギヤ30の回転要素における回転数とトルクとの力学的な関係を示す共線図から導くことができる。TminNm2TmaxNm2Tm2tmpGr続いて、設定したモータMG1,MG2のトルク指令Tm1,Tm2をモータECU40に送信するステップS220。トルク指令Tm1,Tm2を受信したモータECU40は、トルク指令Tm1でモータMG1が駆動されると共にトルク指令Tm2でモータMG2が駆動されるようインバータ41,42のスイッチング素子のスイッチング制御を行なう。そして、エンジン22が完爆したか否かを判定しステップS230、完爆していないときにはステップS120のデータの入力処理に戻り、完爆するまでステップS120~S230の処理を繰り返す。ここで、エンジン22の回転数Neが回転数Nrefより小さいときには、エンジン22の吸入空気量制御や燃料噴射制御,点火制御の開始が指示されていないから、ステップS120の処理に戻ることになる。エンジン22の回転数Neが回転数Nref以上になるとステップS150、エンジンECU24に吸入空気量制御や燃料噴射制御,点火制御の開始を指示すると共にステップS170、キャンセルトルクTαに値Tsetを設定するステップS180。吸入空気量制御や燃料噴射制御,点火制御の開始指示を受信したエンジンECU24は、エンジン始動時の吸入空気量を予め定めた吸入空気量が吸入されるようスロットルバルブのポジションを調節する吸入空気量制御と、吸入空気量に対して噴射すべき燃料噴射量に各種補正を施した燃料噴射量が適切なタイミングで燃焼室内に噴射されるよう燃料噴射弁を駆動する燃料噴射制御と、燃焼室内に噴射された燃料が適切なタイミングで点火プラグにより点火されるようイグニッションコイルを制御する点火制御とを開始して、エンジン22を始動制御する。値Tsetは、エンジン22の初爆時のトルク変動をキャンセルするのに必要なトルクとして実験などにより求められるものである。キャンセルトルクTαを設定すると、モータMG2から出力してもよいトルクの上下限としてのトルク制限Tmin,Tmaxを計算すると共にステップS190、モータMG2から出力すべきトルクとしての仮モータトルクTm2tmpを計算しステップS200、計算したトルク制限Tmin,Tmaxで仮モータトルクTm2tmpを制限した値にキャンセルトルクTαを加えたものをモータMG2のトルク指令Tm2として設定しステップS210、設定したモータMG1,MG2のトルク指令Tm1,Tm2をモータECU40に送信しステップS220、エンジン22が完爆したか否かを判定するステップS230。完爆していないときにはステップS120に戻り処理を繰り返す。ここで、完爆は、例えば、圧力センサ143からの筒内圧力Pinの変化に基づいて判定したり、エンジン22の回転数Neの変動に基づいて判定したりすることができる。エンジン22の完爆が判定されると、目標回転数Neとエンジン22の回転数Neとを用いてエンジン22の出力応答がむだ時間tdを有する時定数tcの一次遅れであるとみなしてエンジン22の出力トルクが目標トルクTeに至るまで適正に制御されたと仮定したときのエンジン22の回転数の時間変化として適正制御回転数Neidtを設定すると共にステップS240、目標回転数Neと目標トルクTeとからなる目標運転ポイントでエンジン22を運転するための制御を開始するようエンジンECU24に制御信号を送信するステップS250。ここで、適正制御回転数Neidtは、実施例では、適合値として実験などにより定めたむだ時間tdと時定数tcとを用いてエンジン22の回転数Neと目標回転数Neに対してシミュレーション等により経過時間tに対応する値を求めてマップとして記憶しておき、エンジン22の回転数Neと目標回転数Neとが与えられると、記憶したマップから経過時間tに対する各値を導出することにより設定するものとした。図8では、適正制御回転数Neidをエンジン回転数Neにおける時間t20以降の実線として示した。目標運転ポイントでエンジン22を運転するための制御としては、目標運転ポイントに対応するスロットル開度となるようスロットルバルブ124を調整する吸入空気量制御や、吸入空気量に対して目標空燃比となるよう燃料噴射量を計算して燃料噴射弁126から噴射する燃料噴射制御、トルク出力に適した点火タイミングで点火する点火制御、トルク出力に適した吸気バルブの開閉タイミングとする吸気バルブタイミング制御などが含まれる。目標空燃比としては、理論空燃比にエンジン22の冷却水温Twによる補正や吸気温Taによる補正などが施されたものとして求めることができる。図8に示すように、エンジン22の回転数Neは、時間t20以降は徐々に大きくなるから、スロットルバルブ124を目標運転ポイントに対応するスロットル開度となるよう保持すれば、吸入空気量は回転数Neが大きくなるにしたがって大きくなる。目標空燃比はあまり変更されないから、吸入空気量が大きくなるにしたがって燃料噴射量も大きくなり、エンジン22の回転数Neが目標回転数Neに至ったときにエンジン22から目標トルクTeが出力されるようになる。こうしてエンジン22の制御を開始すると、ステップS130,S140の処理と同様に、アクセルペダルポジションセンサ84からのアクセル開度Accや車速センサ88からの車速V,モータMG1,MG2の回転数Nm1,Nm2,エンジン22の回転数Ne,バッテリ50の入出力制限Win,Woutなど制御に必要なデータを入力すると共にステップS260、入力したアクセル開度Accと車速Vと図7の要求トルク設定用マップとに基づいて要求トルクTrを設定するステップS270。そして、始動確認タイミング以降の経過時間t2に対するエンジン22の出力応答が次式4で示されるむだ時間tdを有する時定数tcの一次遅れむだ時間一次遅れ系であるとみなして始動確認タイミングからの経過時間t2を代入して得られる値Tet2をエンジン22から出力が推定されるエンジン推定トルクTeestとして設定しステップS280、このエンジン推定トルクTeestを式5に代入してモータMG1のトルク指令Tm1を設定する際のフィードフォワード項FFとして設定するステップS290。ここで、むだ時間tdは、図8では時間t20からエンジン推定トルクTeestが値0から立ち上がる時間t21までの時間t21-t20であり、時定数tcは、時間t21からエンジン推定トルクTeestが目標トルクTeに1-1/eを乗じた値に至る時間t22までの時間t22-t21である。なお、e]は自然体数の底である。また、式5の右辺は、プラネタリギヤ30の回転要素に対する力学的な関係式であり、フィードフォワード項FFは、エンジン推定トルクTeestがプラネタリギヤ30のキャリアに入力されたときにサンギヤに配分されるトルクを打ち消すトルクとして計算される。TeTe1etcFFρTeestステップS240で設定した適正制御回転数Neidtに始動確認タイミングからの経過時間t2を適用して経過時間t2の適正制御回転数Neidt2を計算しステップS300、適正制御回転数Neidt2からエンジン22の回転数Neを減じて差分回転数ΔNet2を計算して記憶するステップS310。差分回転数ΔNet2を記憶するのは、後述するむだ時間tdと時定数tcを学習する際に用いるためである。続いて、差分回転数ΔNet2を打ち消すためのフィードバック項FBを次式6により設定しステップS320、ステップS290で設定したフィードフォワード項FFとフィードバック項FBとの和としてモータMG1のトルク指令Tm1を設定するステップS330。ここで、式6の右辺第1項のk1は比例項のゲインであり、右辺第2項のk2は積分項のゲインである。FBk1ΔNek2∫ΔNedtそして、ステップS190,S200と同様にトルク制限Tmin,Tmaxと仮モータトルクTm2tmpを計算すると共にステップS340,S350、計算したトルク制限Tmin,Tmaxで仮モータトルクTm2tmpを制限した値をモータMG2のトルク指令Tm2として設定しステップS360、設定したモータMG1,MG2のトルク指令Tm1,Tm2をモータECU40に送信しステップS370、エンジン22の回転数Neが目標回転数Neより所定値dNだけ小さい値以上に至ったか否かを判定しステップS380、エンジン22の回転数Neが目標回転数Neより所定値dNだけ小さい値以上に至っていないときにはステップS260のデータの入力処理に戻り、エンジン22の回転数Neが目標回転数Neより所定値dNだけ小さい値以上に至るまでステップS260~S380の処理を繰り返す。ここで、所定値dNは、比較的小さな値であり、例えば、20rpmや30rpm,50rpmなどを用いることができる。即ち、ステップS380の処理は、エンジン22の回転数Neがほぼ目標回転数Neに至ったか否かを判定するものとなる。ステップS380でエンジン22の回転数Neが目標回転数Neより所定値dNだけ小さい値以上に至っていると判定されると、エンジン22の始動時の制御を終了したと判断し、始動時制御ルーチンを終了する。次に、むだ時間tdと時定数tcを学習する学習処理について図5を用いて説明する。上述したように、図5の学習処理ルーチンは、図3および図4の始動時制御ルーチンが終了したときに実行される。この学習処理ルーチンが実行されると、HVECU70のCPUは、まず、エンジン22の完爆を確認した始動確認タイミングからエンジン22の回転数Neがほぼ目標回転数Neに至って図3および図4の始動時制御ルーチンを終了するまでにステップS260~S380の処理を繰り返しているときにステップS310で計算した差分回転数ΔNet2を読み込む処理を実行するステップS400。続いて、読み込んだ差分回転数ΔNet2のうち、始動確認タイミング時間t20からむだ時間tdだけ経過した時間t21近傍で極大値または極小値が生じているときにはその極値をむだ時間用極値ΔNe1として設定しステップS410、始動確認タイミング時間t20からむだ時間tdと時定数tcとの和だけ経過した時間t22近傍で極大値または極小値が生じているときにはその極値を時定数用極値ΔNe2として設定するステップS420。ここで、むだ時間tdおよび時定数tcと差分回転数ΔNet2との関係について説明する。むだ時間tdと時定数tcが適正値である場合、エンジン22の回転数Neの変化は、適正制御回転数Neidt2の変化と同様となるため、差分回転数ΔNet2は小さな値となり、極大値や極小値が生じてもその絶対値は小さなものとなる。このため、むだ時間用極値ΔNe1や時定数用極値ΔNe2にはその絶対値が小さな値が設定される。むだ時間tdが適正値より小さい場合、むだ時間tdが経過した時間t21以降であっても若干の時間はエンジン22からトルクは出力されないが、むだ時間tdが経過しているため、エンジン22からトルクが出力されていると推定され、エンジン推定トルクTeestは値0より大きな値が設定され、モータMG1のトルク指令Tm1にはエンジン推定トルクTeestを押さえ込む方向に作用するトルクが設定される。このため、エンジン22の回転数Neは適正制御回転数Neidt2に対してアンダーシュートすることになり、正の値の差分回転数ΔNet2が計算される。図3および図4の始動時制御ルーチンのステップS310では差分回転数ΔNet2が打ち消される方向に作用するフィードバック項FBが設定されるから、差分回転数ΔNet2はその絶対値が小さくなり、この結果、差分回転数ΔNet2に極大値が生じるようになる。一方、むだ時間tdが適正値より大きい場合、むだ時間tdが経過した時間t21以前にエンジン22からトルクが出力されるが、むだ時間tdが経過していないため、エンジン22からトルクが出力されていないと推定され、エンジン推定トルクTeestは値0が設定され、モータMG1のトルク指令Tm1にも値0が設定される。このため、エンジン22の回転数Neは適正制御回転数Neidt2に対してオーバーシュートすることになり、負の値の差分回転数ΔNet2が計算される。始動時制御ルーチンのステップS310では差分回転数ΔNet2が打ち消される方向に作用するフィードバック項FBが設定されるため、差分回転数ΔNet2はその絶対値が小さくなり、この結果、差分回転数ΔNet2に極小値が生じるようになる。こうした極大値や極小値は、むだ時間tdとその適正値との大小により生じるから、むだ時間tdが経過した時間t21近傍に出現することになる。上述したように、むだ時間tdが適正値であれば時間t21近傍に極大値や極小値は生じないから、実施例のステップS410の処理では、極大値や極小値が生じているときにはその極値をむだ時間用極値ΔNe1として設定し、極大値や極小値が生じていないときにはむだ時間用極値ΔNe1に値0を設定するものとした。時定数tcが適正値より小さい場合、エンジン22から出力されるトルクの増加の程度よりエンジン推定トルクTeestのトルクの増加の程度の方が大きくなるため、モータMG1のトルク指令Tm1には適正な値より大きな値が設定される。このため、エンジン22の回転数Neは適正制御回転数Neidt2に対してアンダーシュートすることになり、正の値の差分回転数ΔNet2が計算される。始動時制御ルーチンのステップS310では差分回転数ΔNet2が打ち消される方向に作用するフィードバック項FBが設定されるため、差分回転数ΔNet2はその絶対値が小さくなり、この結果、差分回転数ΔNet2に極大値が生じるようになる。一方、時定数tcが適正値より大きい場合、エンジン22から出力されるトルクの増加の程度よりエンジン推定トルクTeestのトルクの増加の程度の方が小さくなるため、モータMG1のトルク指令Tm1には適正な値より小さな値が設定される。このため、エンジン22の回転数Neは適正制御回転数Neidt2に対してオーバーシュートすることになり、負の値の差分回転数ΔNet2が計算される。始動時制御ルーチンのステップS310では差分回転数ΔNet2が打ち消される方向に作用するフィードバック項FBが設定されるため、差分回転数ΔNet2はその絶対値が小さくなり、この結果、差分回転数ΔNet2に極大値が生じるようになる。こうした極大値や極小値は、時定数tcとその適正値との大小により生じるから、時定数tcが経過した時間t22近傍に出現することになる。上述したように、時定数tcが適正値であれば時間t22近傍に極大値や極小値は生じないから、実施例のステップS420の処理では、極大値や極小値が生じているときにはその極値を時定数用極値ΔNe2として設定し、極大値や極小値が生じていないときには時定数用極値ΔNe2に値0を設定するものとした。なお、図8のエンジン回転数Neには、説明のために、むだ時間tdが適正値より若干小さく、時定数tcが適正値より若干大きい場合を一点鎖線として示した。むだ時間用極値ΔNe1と時定数用極値ΔNe2とを設定すると、むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲内にあるか否かを判定するステップS430。ここで、閾値dNe1と閾値dNe2は、むだ時間tdが適正値から許容される範囲を差分回転数としたときの負側の範囲の下限値と正側の範囲の上限値であり、閾値dNe1と閾値dNe2としては、その絶対値が同じものを用いるものとしてもよい。むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲内となるときには、むだ時間tdは適正値から許容範囲内であると判断してむだ時間tdの更新は行なわず、むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲外となるときには、むだ時間tdは適正値から許容範囲外であると判断して、むだ時間用極値ΔNe1に係数kdを乗じたものをそれまで用いていたむだ時間tdから減じて新たなむだ時間tdとして更新するステップS440。続いて、時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲内にあるか否かを判定するステップS450。ここで、閾値dNe3と閾値dNe4は、時定数tcが適正値から許容される範囲を差分回転数ΔNet2としたときの負側の範囲の下限値と正側の範囲の上限値であり、閾値dNe3と閾値dNe4としては、その絶対値が同じものを用いるものとしてもよい。時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲内となるときには、時定数tcは適正値から許容範囲内であると判断して学習処理を終了し、時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲外となるときには、時定数tcは適正値から許容範囲外であると判断して、時定数用極値ΔNe2に係数kcを乗じたものをそれまで用いていた時定数tcから減じて新たな時定数tcとして更新してステップS460、学習処理を終了する。以上説明した実施例のハイブリッド自動車20によれば、エンジン22の始動を確認した始動確認タイミングからエンジン22が目標運転ポイントで運転されるまではエンジン22の出力応答がむだ時間tdを有する時定数tcの一次遅れであるとみなしてエンジン22から出力が推定されるエンジン推定トルクTeestに基づいてモータMG1のトルク指令Tm1を設定してモータMG1とエンジン22を制御する際に用いるむだ時間tdと時定数tcを、エンジン22の出力応答がむだ時間tdを有する時定数tcの一次遅れであるとみなして適正にモータMG1とエンジン22とが制御されたと仮定したときのエンジン22の回転数の時間変化としての適正制御回転数Neidt2とエンジン22の回転数Neとの差分としての差分回転数ΔNet2の始動確認タイミング時間t20からむだ時間tdが経過した時間t21近傍に生じ得る極大値または極小値に基づいてむだ時間tdを学習し、差分回転数ΔNet2の始動確認タイミング時間t20からむだ時間tdと時定数tcが経過した時間t22近傍に生じ得る極大値または極小値に基づいて時定数tcを学習することにより、始動時のエンジン22の回転数Neを失速させたり、エンジン22を吹き上がらせたりすることなく、エンジン22を目標運転ポイントに至らせることができる。しかも、むだ時間用極値ΔNe1や時定数用極値ΔNe2に係数kdや係数kcを乗じた値だけむだ時間tdや時定数tcを変更することによりむだ時間tdと時定数tcを更新するから、より適正なむだ時間tdと時定数tcを用いてエンジン22の始動時の制御を行なうことができる。また、むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とからなる範囲外のときにだけむだ時間tdを更新すると共に時定数用極値ΔNe2が閾値dNe3と閾値dNe4とからなる範囲外のときにだけ時定数tcを更新するから、頻繁な更新を抑制することができる。実施例のハイブリッド自動車20では、むだ時間tdや時定数tcを学習する際に、むだ時間用極値ΔNe1に係数kdを乗じた値だけむだ時間tdを変更すると共に時定数用極値ΔNe2に係数kcを乗じた値だけ時定数tcを変更することにより更新するものとしたが、むだ時間tdも時定数tcも所定量だけ変更することにより更新するものとしてもよい。この場合、図5の学習処理ルーチンに代えて図9の学習処理ルーチンを実行すればよい。図9の学習処理ルーチンでは、差分回転数ΔNet2を入力すると共にステップS400、むだ時間用極値ΔNe1と時定数用極値ΔNe2とを設定しステップS410,S420、むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲内にあるか否かを判定しステップS430、むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲内となるときには、むだ時間tdは適正値から許容範囲内であると判断してむだ時間tdの更新は行なわず、むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲外となるときには、むだ時間用極値ΔNe1の符号を調べステップS442、むだ時間用極値ΔNe1が正の値のときには、むだ時間tdから所定値Δtdだけ減じた値を新たなむだ時間tdとして更新しステップS444、むだ時間用極値ΔNe1が負の値のときには、むだ時間tdに所定値Δtdを加えた値を新たなむだ時間tdとして更新するステップS446。所定値Δtdは、むだ時間tdを若干変更する程度の値を用いることができる。そして、時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲内にあるか否かを判定しステップS450、時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲内となるときには、時定数tcは適正値から許容範囲内であると判断して時定数tcの更新は行なわずに学習処理を終了し、時定数用極値ΔNe2が閾値dNe1と閾値dNe2とによる範囲外となるときには、時定数用極値ΔNe2の符号を調べステップS462、時定数用極値ΔNe2が正の値のときには、時定数tcから所定値Δtcだけ減じた値を新たな時定数tcとして更新してステップS464、学習処理を終了し、時定数用極値ΔNe2が負の値のときには、時定数tcに所定値Δtcを加えた値を新たな時定数tcとして更新してステップS466、学習処理を終了する。所定値Δtcは、時定数tcを若干変更する程度の値を用いることができる。このようにしても、実施例と同様の効果を奏することができる。実施例のハイブリッド自動車20では、むだ時間tdや時定数tcを学習する際に、むだ時間用極値ΔNe1に係数kdを乗じた値だけむだ時間tdを変更すると共に時定数用極値ΔNe2に係数kcを乗じた値だけ時定数tcを変更することにより更新するものとしたが、空気量負荷率KLを用いてむだ時間tdと時定数tcとを学習するものとしてもよい。この場合の学習処理ルーチンを図10に示す。この図10の学習処理ルーチンは、図3および図4の始動時制御ルーチンが実行が開始されたときに始動時制御ルーチンと並列に実行される。この学習処理ルーチンでは、HVECU70のCPUは、まず、始動時制御ルーチンが終了するまで空気量負荷率KLnを繰り返し入力する処理を実行しステップS500,S510、差分回転数ΔNet2を入力すると共にステップS520、むだ時間用極値ΔNe1と時定数用極値ΔNe2とを設定しステップS530,S540、むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲内にあるか否かを判定すると共にステップS550、時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲内にあるか否かを判定するステップS560。むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲内にあり且つ時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲内にあるときには、むだ時間tdも時定数tcも適正値から許容範囲内であると判断し、むだ時間tdや時定数tcの更新を行なうことなく学習処理を終了する。むだ時間用極値ΔNe1が閾値dNe1と閾値dNe2とによる範囲外にあるか、あるいは、時定数用極値ΔNe2が閾値dNe3と閾値dNe4とによる範囲外にあるときには、むだ時間tdと時定数tcのうち少なくとも一方が適正値から許容範囲外であると判断し、ステップS570~S620の空気量負荷率KLnに基づくむだ時間tdと時定数tcの更新を行なう。この更新処理は、まず、空気量負荷率KLnからその直前の空気量負荷率KLn-1を減じて負荷率変化量ΔKLnを計算しステップS570、負荷率変化量ΔKLnのうち始動確認タイミング時間t20以降で負荷率変化量ΔKLが閾値KLrefより大きくなる時間t2pを求めステップS580、時間t2pから時間t20を減じた値としてむだ時間tdを更新するステップS590。ここで、閾値KLrefは、空気量負荷率KLの急増を判定するためのものであり、実験などにより定めることができる。図11に始動時のモータMG1のトルク指令Tm1とエンジン22の回転数Neとエンジン推定トルクTeestと空気量負荷率KLの時間変化の一例を示す。このように、むだ時間tdを空気量負荷率KLが急増するまでの時間として考えることができるのは、エンジン22からトルクが出力されると空気量負荷率KLが急増することに基づく。そして、エンジン22を目標回転数Neと目標トルクTeとからなる目標運転ポイントで運転したときの目標空気量負荷率KLを設定しステップS600、空気量負荷率KLnのうちKL1-1/eとなる空気量負荷率KLが出現する時間t2qを求めステップS610、時間t2qから時間t2pを減じた値として時定数tcを更新しステップS620、学習処理を終了する。ここで、eは自然対数の底である。空気量負荷率KLの変化はエンジン22の出力応答と考えることができるから、時定数の定義から、むだ時間tdを経過したときから空気量負荷率KLが目標空気量負荷率KLの1-1/e×100の値に達するまでの時間を時定数tcとすることができる。こうした空気量負荷率KLを用いてむだ時間tdと時定数tcを学習する態様のハイブリッド自動車でも実施例のハイブリッド自動車20と同様に、むだ時間tdと時定数tcとを学習することにより、始動時のエンジン22の回転数Neを失速させたり、エンジン22を吹き上がらせたりすることなく、エンジン22を目標運転ポイントに至らせることができるという効果を奏することができる。実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、エンジン22がエンジンに相当し、モータMG1が第1モータに相当し、プラネタリギヤ30がプラネタリギヤに相当し、モータMG2が第2モータに相当し、クランクポジションセンサ140からの信号に基づいて回転数Neを演算するエンジンECU24が回転数検出手段に相当し、図3および図4の始動時制御ルーチンや図5の学習処理ルーチンを実行するHVECU70とHVECU70からのトルク指令Tm1,Tm2を受信してモータMG1,MG2を駆動制御するモータECU40とHVECU70からの目標回転数Neや目標トルクTe,制御信号を受信してエンジン22の吸入空気量制御や燃料噴射制御,点火制御,吸気バルブタイミング制御などを行なう24とが制御手段に相当する。なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。"