(57)【要約】【課題】エンジンにＭＧ（モータジェネレータ）が動力伝達可能に連結されたハイブリッド車において、エンジンを始動させる際にエンジン回転速度の吹け上がりを抑制しながら車両の振動を抑制できるようにする。【解決手段】エンジン１１の始動開始からエンジン回転速度が上昇して目標エンジン回転速度を含む所定範囲内で安定するまでを始動状態と判定し、始動状態と判定されているときに、エンジン回転速度の急上昇を抑制するようにエンジン１１の目標出力に応じてアクチュエータ（スロットル、バルブタイミング）指令値の時間当りの変化量を補正する指令値補正を実行する。この指令値補正によりエンジン１１の吸入空気量を緩やかに増加させてエンジン回転速度を緩やかに上昇させることによって、エンジン回転速度の吹け上がりを抑制すると共に、ＭＧ１２の負荷トルクの急激な増大を抑制して車両の振動を抑制する。【選択図】図１
2015085808.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関（１１）にモータジェネレータ（１２）が動力伝達可能に連結され、前記内燃機関（１１）の回転速度を目標回転速度に追従させるように前記モータジェネレータ（１２）を制御するハイブリッド車の制御装置において、
前記内燃機関（１１）の始動開始から前記内燃機関（１１）の回転速度が安定するまでを始動状態と判定する始動状態判定手段（３１）と、
前記内燃機関（１１）の目標出力に基づいて目標吸入空気量又は目標空気充填量を算出し、該目標吸入空気量又は該目標空気充填量を実現するためにアクチュエータへの指令値を算出する指令値算出手段（３１）と、
前記始動状態と判定されているときに、前記内燃機関（１１）の回転速度の急上昇を抑制するように前記内燃機関（１１）の目標出力に応じて前記指令値の時間当りの変化量を補正する指令値補正手段（３１）と
を備えていることを特徴とするハイブリッド車の制御装置。
【請求項２】
前記指令値補正手段（３１）は、前記内燃機関（１１）の目標出力が小さいほど前記指令値の時間当りの変化量を小さくすることを特徴とする請求項１に記載のハイブリッド車の制御装置。
【請求項３】
前記指令値補正手段（３１）は、前記内燃機関（１１）の目標出力が所定値よりも大きい場合に前記指令値の時間当りの変化量の補正を実施しないことを特徴とする請求項１又は２に記載のハイブリッド車の制御装置。
【請求項４】
前記指令値算出手段（３１）は、前記指令値として前記内燃機関（１１）のスロットル開度の指令値を算出し、
前記指令値補正手段（３１）は、前記スロットル開度の指令値の時間当りの変化量を補正することを特徴とする請求項１乃至３のいずれかに記載のハイブリッド車の制御装置。
【請求項５】
前記指令値算出手段（３１）は、前記指令値として前記内燃機関（１１）のバルブタイミング位相角の指令値を算出し、
前記指令値補正手段（３１）は、前記バルブタイミング位相角の指令値の時間当りの変化量を補正することを特徴とする請求項１乃至４のいずれかに記載のハイブリッド車の制御装置。
【請求項６】
前記指令値補正手段（３１）による前記指令値の時間当りの変化量の補正の実行中において、前記内燃機関（１１）の目標出力が所定値よりも小さい場合に前記内燃機関の燃料噴射量を変化させる燃料噴射量補正と前記内燃機関の点火タイミングを変化させる点火タイミング補正のうちの少なくとも一方を実行する補正手段（３１）を備えていることを特徴とする請求項１乃至５のいずれかに記載のハイブリッド車の制御装置。
【請求項７】
前記始動状態判定手段（３１）は、前記内燃機関（１１）の始動開始から前記内燃機関（１１）の回転速度が上昇して前記目標回転速度を含む所定範囲内で安定するまでを前記始動状態と判定することを特徴とする請求項１乃至６のいずれかに記載のハイブリッド車の制御装置。
【請求項８】
前記始動状態判定手段（３１）は、前記内燃機関（１１）の回転速度が前記目標回転速度を含む所定範囲内となっている状態が所定時間以上継続したときに前記始動状態の終了と判定することを特徴とする請求項１乃至７のいずれかに記載のハイブリッド車の制御装置。
【請求項９】
前記始動状態判定手段（３１）は、前記内燃機関（１１）の始動開始から所定時間が経過したときに前記内燃機関（１１）の回転速度が所定値よりも高い場合に前記始動状態ではないと判定することを特徴とする請求項１乃至８のいずれかに記載のハイブリッド車の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関にモータジェネレータが動力伝達可能に連結されたハイブリッド車の制御装置に関する発明である。
【背景技術】
【０００２】
例えば、特許文献１（特開２００４−３２４５８９号公報）に記載されているように、アイドルストップ機能付きの車両において、エンジンを再始動させる際にモータジェネレータでエンジンに負荷トルクを作用させることでエンジン回転速度の吹け上がりを抑制するようにしたものがある。その際、エンジン回転速度が高くなるほどモータジェネレータの負荷トルク（モータジェネレータによりエンジンに作用させる負荷トルク）を増大させるようにしている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３２４５８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記特許文献１の技術では、エンジン始動時にエンジン回転速度が高くなるほどモータジェネレータの負荷トルク（モータジェネレータによりエンジンに作用させる負荷トルク）を増大させるようにしているが、モータジェネレータの負荷トルクが急激に増大すると、車両に振動が発生する可能性がある。
【０００５】
また、上記特許文献１の技術では、エンジン始動時にアクセル開度が全閉の場合にのみモータジェネレータの負荷トルクを増大させてエンジン回転速度の吹け上がりを抑制するようにしているため、アクセル開度が全閉よりも開いた状態でエンジンを始動させる場合（例えばハイブリッド車において車両の走行中の加速要求に対してエンジンを始動させる場合）には、エンジン回転速度の吹け上がりを抑制することができない。
【０００６】
そこで、本発明が解決しようとする課題は、内燃機関を始動させる際に内燃機関の回転速度の吹け上がりを抑制しながら車両の振動を抑制することができるハイブリッド車の制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に係る発明は、内燃機関（１１）にモータジェネレータ（１２）が動力伝達可能に連結され、内燃機関（１１）の回転速度を目標回転速度に追従させるようにモータジェネレータ（１２）を制御するハイブリッド車の制御装置において、内燃機関（１１）の始動開始から内燃機関（１１）の回転速度が安定するまでを始動状態と判定する始動状態判定手段（３１）と、内燃機関（１１）の目標出力に基づいて目標吸入空気量又は目標空気充填量を算出し、該目標吸入空気量又は該目標空気充填量を実現するためにアクチュエータへの指令値を算出する指令値算出手段（３１）と、始動状態と判定されているときに、内燃機関（１１）の回転速度の急上昇を抑制するように内燃機関（１１）の目標出力に応じて指令値の時間当りの変化量を補正する指令値補正手段（３１）とを備えた構成としたものである。
【０００８】
内燃機関の回転速度を目標回転速度に追従させるようにモータジェネレータを制御するシステムでは、内燃機関の始動時に内燃機関の回転速度が急上昇すると、モータジェネレータの負荷トルク（モータジェネレータによりエンジンに作用させる負荷トルク）が急激に増大して、車両に振動が発生する可能性がある。
【０００９】
そこで、本発明では、内燃機関の始動開始から内燃機関の回転速度が安定するまでを始動状態と判定し、始動状態と判定されているときに、内燃機関の回転速度の急上昇を抑制するように内燃機関の目標出力に応じてアクチュエータへの指令値の時間当りの変化量を補正する指令値補正を実行するようにしている。
【００１０】
この指令値補正により内燃機関の吸入空気量又は空気充填量を緩やかに増加させて内燃機関の回転速度を緩やかに上昇させることができる。これにより、内燃機関の回転速度の吹け上がりを抑制することができると共に、モータジェネレータの負荷トルクの急激な増大を抑制して車両の振動を抑制することができる。しかも、始動状態と判定されている期間中（つまり内燃機関の始動開始から内燃機関の回転速度が安定するまでの期間中）は、指令値補正を継続することができるため、アクセル開度等に拘らず内燃機関を始動させる際に内燃機関の回転速度の吹け上がりを抑制しながら車両の振動を抑制することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は本発明の一実施例におけるハイブリッド車の駆動システムの概略構成を示す図である。
【図２】図２はエンジン始動時制御の概要を説明するタイムチャートである。
【図３】図３はベースルーチンの処理の流れを示すフローチャートである。
【図４】図４は始動状態判定ルーチンの処理の流れを示すフローチャート（その１）である。
【図５】図５は始動状態判定ルーチンの処理の流れを示すフローチャート（その２）である。
【図６】図６はアクチュエータ指令値算出ルーチンの処理の流れを示すフローチャートである。
【図７】図７は指令値補正ルーチンの処理の流れを示すフローチャートである。
【図８】図８は燃料噴射量補正及び点火タイミング補正ルーチンの処理の流れを示すフローチャートである。
【図９】図９は補正係数Ｔagのテーブルの一例を概念的に示す図である。
【図１０】図１０は補正係数Ｖagのテーブルの一例を概念的に示す図である。
【図１１】図１１は始動状態判定の実行例を示すタイムチャートである。
【図１２】図１２は目標スロットル開度算出の実行例を示すタイムチャートである。
【図１３】図１３は指令値補正の実行例を示すタイムチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態を具体化した一実施例を説明する。
まず、図１に基づいてハイブリッド車の駆動システムの概略構成を説明する。
車両の動力源として内燃機関であるエンジン１１とモータジェネレータ（以下「ＭＧ」と表記する）１２とが搭載されている。エンジン１１の出力軸１３（クランク軸）とＭＧ１２の回転軸１４と車輪１５の駆動軸１６とが遊星歯車機構１７等を介して動力伝達可能に連結されている。
【００１３】
この遊星歯車機構１７は、サンギヤ１８とプラネタリギヤ１９とリングギヤ２０等から構成されている。プラネタリギヤ１９には、プラネタリキャリア２１を介してエンジン１１の出力軸１３が連結され、サンギヤ１８には、ＭＧ１２の回転軸１４が連結されている。また、リングギヤ２０には、動力伝達ギヤ２２等を介して駆動軸１６が連結されている。更に、リングギヤ２０（又は駆動軸１６）に第二のＭＧの回転軸を連結した構成としても良い。
【００１４】
エンジン１１の吸気管２３には、吸入空気量を検出するエアフローメータ２４が設けられている。このエアフローメータ２４の下流側には、モータ２５によって開度調節されるスロットルバルブ２６と、このスロットルバルブ２６の開度（スロットル開度）を検出するスロットル開度センサ（図示せず）とが設けられている。
【００１５】
また、エンジン１１の各気筒の吸気ポート又はその近傍に、それぞれ吸気ポートに燃料を噴射する燃料噴射弁２７が取り付けられている。更に、エンジン１１のシリンダヘッドには、各気筒毎に点火プラグ２８が取り付けられ、各気筒の点火プラグ２８の火花放電によって各気筒内の混合気に着火される。
【００１６】
ハイブリッドＥＣＵ２９は、車両全体を総合的に制御するコンピュータであり、アクセル開度（アクセルペダルの操作量）を検出するアクセルセンサ３０、シフトレバーの操作位置を検出するシフトスイッチ（図示せず）、ブレーキ操作を検出するブレーキスイッチ（図示せず）、車速を検出する車速センサ（図示せず）等の各種のセンサやスイッチの出力信号を読み込んで車両の運転状態を検出する。このハイブリッドＥＣＵ２９は、エンジン１１の運転を制御するエンジンＥＣＵ３１等との間で制御信号やデータ信号を送受信し、車両の運転状態に応じて、ＭＧ１２を制御すると共に、エンジンＥＣＵ３１によってエンジン１１を制御する。
【００１７】
例えば、ハイブリッドＥＣＵ２９は、アクセル開度（アクセルセンサ３０の出力信号）等に基づいて車両要求出力（車両に対する要求出力）を算出し、この車両要求出力等に基づいてエンジン要求出力（エンジン１１に対する要求出力）を算出してエンジンＥＣＵ３１に出力する。また、ハイブリッドＥＣＵ２９は、エンジン１１を始動させる際に、クランキング指令をＭＧ１２に出力して、ＭＧ１２の動力でエンジン１１をクランクキングすると共に、エンジン始動要求フラグＸestdをエンジン始動要求有りを意味する「１」にセットしてエンジンＥＣＵ３１に出力する。このエンジン始動要求フラグＸestdは、エンジン１１を停止させるまで「１」に維持され続ける。更に、ハイブリッドＥＣＵ２９は、燃料カット要求やエンジン停止要求等をエンジンＥＣＵ３１に出力する。
【００１８】
エンジンＥＣＵ３１は、ハイブリッドＥＣＵ２９からの制御信号（例えば、エンジン始動要求、エンジン要求出力、燃料カット要求、エンジン停止要求等）やエンジン運転状態（例えば、エンジン回転速度、吸入空気量、吸気温、外気温等）に基づいて、燃料噴射量、点火時期、スロットル開度（吸入空気量）、バルブタイミング位相角（以下「ＶＴ位相角」と表記する）等を制御する。ここで、ＶＴ位相角は、例えば、吸気バルブの開閉タイミングの位相角とする。
【００１９】
次に図２を用いてエンジン始動時制御（エンジン１１の始動時の制御）について説明する。尚、図２では、運転者の加速要求（アクセル開度の増加）に伴うエンジン始動時制御を例に挙げているが、これに限定されず、本発明は、全てのエンジン始動時制御に適用可能である。また、図２中の実線は本発明を、破線は従来技術を示している。
【００２０】
図２に示すように、ハイブリッドＥＣＵ２９は、アクセル開度の増加に伴う車両要求出力の増加によってエンジン１１の始動要求が発生した時点ｔ1 で、ＭＧ１２をモータとして機能させてＭＧ１２の動力でエンジン１１をクランキングする処理を開始する。エンジンＥＣＵ３１は、エンジン回転速度が所定値αまで上昇した時点ｔ2 で、燃料噴射と点火を開始してエンジン１１の燃焼を開始する。ハイブリッドＥＣＵ２９は、エンジン回転速度が所定値βまで上昇した時点ｔ3 で、エンジン１１の始動完了と判断して、ＭＧ１２によるクランキングを終了する。
【００２１】
クランキングが終了すると、ハイブリッドＥＣＵ２９は、アクセル開度等に基づいて算出した車両要求出力と車両の運転状態に基づいてエンジン要求出力（エンジン１１の目標出力）と目標エンジン回転速度（エンジン１１の目標回転速度）を算出し、これらのエンジン要求出力と目標エンジン回転速度をエンジンＥＣＵ３１に出力する。
【００２２】
エンジンＥＣＵ３１は、エンジン要求出力と目標エンジン回転速度に基づいて目標エンジントルク（エンジン１１の目標トルク）を算出し、目標エンジントルクに基づいて目標空気充填量を算出する。更に、目標エンジン回転速度と目標空気充填量に基づいて目標スロットル開度（目標エンジントルクを実現するのに必要な吸入空気量に相当するスロットル開度）を算出する。
【００２３】
クランキングの終了後は、ＭＧ１２がエンジン１１に対してトルクを発生させていない状態を経て、エンジン１１のトルク制御へと移行するが、エンジン回転速度を目標エンジン回転速度に追従させるために、ハイブリッドＥＣＵ２９は、エンジン回転速度を目標エンジン回転速度に追従させるようにＭＧ１２のトルクを制御する回転速度フィードバック制御を実行する。
【００２４】
ここで、エンジン１１の動力伝達系の挙動について説明する。
エンジン１１から出力されるトルクは、プラネタリキャリア２１を介してプラネタリギヤ１９に伝達される。このプラネタリギヤ１９は、サンギヤ１８とリングギヤ２０の両方と噛み合っているが、サンギヤ１８がＭＧ１２の回転軸１４に連結され、リングギヤ２０が動力伝達ギヤ２２、駆動軸１６等を介して車輪１５に連結され、この車輪１５が路面に接地している。
【００２５】
このため、ＭＧ１２がトルクを発生させていない状態（つまりＭＧ１２のトルクがサンギヤ１８に作用していない状態）のときには、サンギヤ１８がほぼフリー状態となり、サンギヤ１８のエンジン１１に対する負荷トルクよりもリングギヤ２０のエンジン１１に対する負荷トルクの方がはるかに大きくなる。これにより、プラネタリギヤ１９からリングギヤ２０に伝達されるエンジン１１のトルクは０に近くなり、エンジン１１のトルクがプラネタリギヤ１９からサンギヤ１８に伝達されてサンギヤ１８の回転速度が上昇する。
【００２６】
この後、ＭＧ１２の回転速度フィードバック制御が開始されて、ＭＧ１２の負荷トルク（ＭＧ１２によりエンジン１１に作用させる負荷トルク）が増大すると、サンギヤ１８のエンジン１１に対する負荷トルクが増大し、これに伴ってエンジン１１のトルクがプラネタリギヤ１９からリングギヤ２０に伝達され始める。エンジン１１からプラネタリギヤ１９に伝達されるトルクと、サンギヤ１８及びリングギヤ２０のエンジン１１に対する負荷トルクの合計とが釣り合うと、エンジン１１は所定の回転速度で定常稼働することができる。このとき、ＭＧ１２は、回転方向と発生するトルクの方向が異なっているため、ジェネレータとして機能して発電している。
【００２７】
ところで、ＭＧ１２の回転速度フィードバック制御によりＭＧ１２の負荷トルクが急激に増大すると、エンジン１１からプラネタリギヤ１９に伝達されるトルクが、リングギヤ２０、動力伝達ギヤ２２等を介して駆動軸１６に急激に加わる。しかし、車輪１５が路面に接地してグリップしているため、駆動軸１６の回転しようとする速度に追従できず、駆動軸１６には、伝達されるトルクの大きさに比例した大きさのねじれが生じる。駆動軸１６にねじれが生じると、ねじれの大きさに比例した大きさの復元トルク（ねじれを戻そうとする方向のトルク）が発生し、この復元トルクが大きいほど振動の振幅が大きくなるため、ＭＧ１２の負荷トルクが急激に発生するほど大きな振動が発生することになる。
【００２８】
このような理由により、エンジン回転速度を目標エンジン回転速度に追従させるようにＭＧ１２のトルクを制御する回転速度フィードバック制御を実行するシステムでは、エンジン始動時にエンジン回転速度が急上昇すると、ＭＧ１２の負荷トルク（ＭＧ１２によりエンジン１１に作用させる負荷トルク）が急激に増大して、車両に振動が発生する可能性がある（図２の破線参照）。
【００２９】
この対策として、本実施例では、エンジンＥＣＵ３１により後述する図３乃至図８のエンジン始動時制御用の各ルーチンを実行することで、エンジン１１の始動開始からエンジン回転速度が安定するまでを始動状態と判定し、始動状態と判定されているときに、エンジン回転速度の急上昇を抑制するようにエンジン要求出力（エンジン１１の目標出力）に応じた目標吸入空気量（又は目標空気充填量）を達成する為、スロットル開度指令値の時間当りの変化量及びＶＴ位相角指令値の時間当りの変化量を補正する指令値補正を実行するようにしている（図２の実線参照）。ここで、スロットル開度指令値は、スロットル開度を調整するためのアクチュエータ（モータ２５）への指令値であり、ＶＴ位相角指令値は、ＶＴ位相角を調整するためのアクチュエータ（図示せず）への指令値である。
【００３０】
この指令値補正によりエンジン１１の吸入空気量（又は空気充填量）を緩やかに増加させてエンジン回転速度を緩やかに上昇させることができる。これにより、エンジン回転速度の吹け上がりを抑制することができると共に、ＭＧ１２の負荷トルクの急激な増大を抑制して車両の振動を抑制することができる。
以下、エンジンＥＣＵ３１が実行する図３乃至図８のエンジン始動時制御用の各ルーチンの処理内容を説明する。
【００３１】
［ベースルーチン］
図３に示すベースルーチンは、エンジンＥＣＵ３１の電源オン期間中（イグニッションスイッチのオン期間中）に実行される。本ルーチンが起動されると、まず、ステップ１０１で、プログラムの初期化処理を行った後、ステップ１０２〜１０５の処理を所定周期（例えば１ｍｓ周期）で繰り返し実行する。
【００３２】
まず、ステップ１０２で、後述する図４及び図５の始動状態判定ルーチンを実行することで、エンジン１１の始動開始からエンジン回転速度が安定するまでを始動状態と判定して、この始動状態の期間中は始動状態フラグＸest を「１」にセットする。
【００３３】
この後、ステップ１０３に進み、後述する図６のアクチュエータ指令値算出ルーチンを実行することで、エンジン要求出力等に基づいてアクチュエータの各指令値（スロットル開度指令値、ＶＴ位相角指令値）を算出する。この後、ステップ１０４に進み、後述する図７の指令値補正ルーチンを実行することで、始動状態と判定されているときには、エンジン回転速度の急上昇を抑制するようにエンジン要求出力に応じてスロットル開度とＶＴ位相角の各指令値の時間当りの変化量を補正する指令値補正を実行する。
【００３４】
この後、ステップ１０５に進み、後述する図８の燃料噴射量補正及び点火タイミング補正ルーチンを実行することで、スロットル開度指令値補正とＶＴ位相角指令値補正のみでは、エンジン回転速度の急上昇を抑制しきれないと判断した場合、前記指令値補正に加え、エンジン１１の燃料噴射量を変化させる燃料噴射量補正と点火タイミングを変化させる点火タイミング補正のうちの少なくとも一方を実施する。
【００３５】
［始動状態判定ルーチン］
図４及び図５に示す始動状態判定ルーチンは、前記図３のベースルーチンのステップ１０２で実行されるサブルーチンであり、所定周期（例えば４ｍｓ周期）で実行され、特許請求の範囲でいう始動状態判定手段としての役割を果たす。
【００３６】
本ルーチンが起動されると、まず、ステップ２０１で、エンジン回転速度Ｎe を読み込んだ後、ステップ２０２に進み、目標エンジン回転速度Ｎetを読み込む。この後、ステップ２０３に進み、エンジン始動要求フラグＸestdを読み込む。
【００３７】
この後、ステップ２０４に進み、本ルーチンの起動毎に第１のカウンタＣ1 のカウント値を「１」ずつカウントアップし、次のステップ２０５で、本ルーチンの起動毎に第２のカウンタＣ2 のカウント値を「１」ずつカウントアップする。
Ｃ1(i)＝Ｃ1(i-1)＋１
Ｃ2(i)＝Ｃ2(i-1)＋１
この後、ステップ２０６に進み、今回のエンジン始動要求フラグＸestd(i) が「１」であるか否か（エンジン始動要求有りか否か）を判定する。
【００３８】
このステップ２０６で、今回のエンジン始動要求フラグＸestd(i) が「０」である（エンジン始動要求無し）と判定された場合には、図５のステップ２１７に進み、第１のカウンタＣ1 のカウント値を所定値（Ｔ1 ＋１）にセットし、次のステップ２１８で、第２のカウンタＣ2 のカウント値を所定値（Ｔ2 ＋１）にセットする。これにより、各カウンタＣ1 ，Ｃ2 のオーバーフローに伴うカウンタリセットを回避する。
Ｃ1(i)＝Ｔ1 ＋１
Ｃ2(i)＝Ｔ2 ＋１
【００３９】
この後、ステップ２１９に進み、始動状態フラグＸest を「０」にリセット又は維持する。
その後、上記ステップ２０６で、今回のエンジン始動要求フラグＸestd(i) が「１」である（エンジン始動要求有り）と判定された場合には、ステップ２０７に進み、前回のエンジン始動要求フラグＸestd(i-1) が「０」であるか否かを判定する。
【００４０】
このステップ２０７で、前回のエンジン始動要求フラグＸestd(i-1) が「０」であると判定された場合には、エンジン始動要求フラグＸestd(i) が「０」から「１」に切り換わったタイミング（つまりエンジン始動要求無しからエンジン始動要求有りに切り換わってエンジン１１の始動が開始されるタイミング）であると判断する。この場合、ステップ２０８に進み、第１のカウンタＣ1 のカウント値を「０」にリセットした後、ステップ２０９に進み、始動状態フラグＸest を「１」にセットして始動状態と判定する。
【００４１】
その後、上記ステップ２０７で、前回のエンジン始動要求フラグＸestd(i-1) が「１」であると判定された場合には、図５のステップ２１０に進み、第１のカウンタＣ1 のカウント値が所定値Ｔ1 よりも小さいか否かを判定する。この所定値Ｔ1 は、エンジン１１の始動に必要な時間よりも長い時間に相当する値に設定されている。
【００４２】
このステップ２１０で、第１のカウンタＣ1 のカウント値が所定値Ｔ1 よりも小さいと判定された場合には、ステップ２１１に進み、｜Ｎet(i) −Ｎet(i-1) ｜＞ΔＮ1 （今回の目標エンジン回転速度Ｎet(i) と前回の目標エンジン回転速度Ｎet(i-1) との差の絶対値が所定値ΔＮ1 よりも大きい）か否かを判定する。
【００４３】
このステップ２１１で、｜Ｎet(i) −Ｎet(i-1) ｜＞ΔＮ1 と判定された場合には、目標エンジン回転速度Ｎetがまだ上昇中で定常状態に至っていないと判断する。この場合、ステップ２１３に進み、第２のカウンタＣ2 のカウント値を「０」にリセットした後、ステップ２１５に進み、始動状態フラグＸest を「１」に維持して始動状態と判定する。
【００４４】
その後、上記ステップ２１１で、｜Ｎet(i) −Ｎet(i-1) ｜≦ΔＮ1 （今回の目標エンジン回転速度Ｎet(i) と前回の目標エンジン回転速度Ｎet(i-1) との差の絶対値が所定値ΔＮ1 以下）と判定された場合には、目標エンジン回転速度Ｎetが定常状態に至ったと判断して、ステップ２１２に進み、｜Ｎet(i) −Ｎe(i)｜＞ΔＮ2 （目標エンジン回転速度Ｎet(i) とエンジン回転速度Ｎe(i)との差の絶対値が所定値ΔＮ2 よりも大きい）か否かを判定する。
【００４５】
このステップ２１２で、｜Ｎet(i) −Ｎe(i)｜＞ΔＮ2 と判定された場合、つまり、エンジン回転速度Ｎe(i)が目標エンジン回転速度Ｎet(i) を含む所定範囲（Ｎet±ΔＮ2 ）内ではないと判定された場合には、エンジン回転速度Ｎe(i)が目標エンジン回転速度Ｎet(i) に追従できていないと判断する。この場合、ステップ２１３に進み、第２のカウンタＣ2 のカウント値を「０」にリセットした後、ステップ２１５に進み、始動状態フラグＸest を「１」に維持して始動状態と判定する。
【００４６】
その後、上記ステップ２１２で、｜Ｎet(i) −Ｎe(i)｜≦ΔＮ2 （目標エンジン回転速度Ｎet(i) とエンジン回転速度Ｎe(i)との差の絶対値が所定値ΔＮ2 以下）と判定された場合、つまり、エンジン回転速度Ｎe(i)が目標エンジン回転速度Ｎet(i) を含む所定範囲（Ｎet±ΔＮ2 ）内であると判定された場合には、ステップ２１４に進み、第２のカウンタＣ2 のカウント値が所定値Ｔ2 よりも小さいか否かを判定する。
【００４７】
このステップ２１４で、第２のカウンタＣ2 のカウント値が所定値Ｔ2 よりも小さいと判定された場合には、ステップ２１５に進み、始動状態フラグＸest を「１」に維持して始動状態と判定する。
【００４８】
その後、上記ステップ２１４で、第２のカウンタＣ2 のカウント値が所定値Ｔ2 以上であると判定された場合、つまり、エンジン回転速度Ｎe(i)が所定範囲（Ｎet±ΔＮ2 ）内となっている状態が所定値Ｔ2 に相当する時間以上継続したと判定された場合には、エンジン回転速度Ｎe が目標エンジン回転速度Ｎet付近に収束した（エンジン回転速度Ｎe が目標エンジン回転速度Ｎet付近で安定した）と判断する。この場合、ステップ２１７に進み、第１のカウンタＣ1 のカウント値を所定値（Ｔ1 ＋１）にセットし、次のステップ２１８で、第２のカウンタＣ2 のカウント値を所定値（Ｔ2 ＋１）にセットする。この後、ステップ２１９に進み、始動状態フラグＸest を「０」にリセットして始動状態の終了（始動状態ではない）と判定する。
【００４９】
これに対して、上記ステップ２１０で、第１のカウンタＣ1 のカウント値が所定値Ｔ1 以上であると判定された場合には、ステップ２１６に進み、エンジン回転速度Ｎe が所定値Ｎ3 よりも高いか否かを判定する。この所定値Ｎ3 は、エンジン１１が自身の燃焼エネルギで回転を維持できる最小回転速度又はそれよりも少し高い値に設定されている。
【００５０】
このステップ２１６で、エンジン回転速度Ｎe が所定値Ｎ3 よりも高いと判定された場合、つまり、エンジン１１の始動開始から所定値Ｔ1 に相当する時間（エンジン１１の始動に必要な時間よりも長い時間）が経過しており、且つ、エンジン回転速度が所定値Ｎ3 （エンジン１１が自身の燃焼エネルギで回転を維持できる最小回転速度又はそれよりも少し高い値）よりも高い場合には、既に始動できていると判断する。この場合、ステップ２１７に進み、第１のカウンタＣ1 のカウント値を所定値（Ｔ1 ＋１）にセットし、次のステップ２１８で、第２のカウンタＣ2 のカウント値を所定値（Ｔ2 ＋１）にセットする。この後、ステップ２１９に進み、始動状態フラグＸest を「０」にリセットして始動状態ではないと判定する。
【００５１】
一方、上記ステップ２１６で、エンジン回転速度Ｎe が所定値Ｎ3 以下であると判定された場合には、エンジン１１が回転速度を維持できずにエンジン回転速度が落ち込んでいるため、ステップ２２０に進み、始動不良と判定し、始動不良異常フラグを「１」にセットしてハイブリッドＥＣＵ２９に出力する。
【００５２】
以上説明した図４及び図５の始動状態判定ルーチンによる始動状態判定の実行例を図１１のタイムチャートを用いて説明する。
エンジン始動要求フラグＸestd(i) が「０」から「１」に切り換わった時点ｔ4 で、第１のカウンタＣ1 のカウント値を「０」にリセットすると共に、始動状態フラグＸest を「１」にセットして始動状態と判定した後、第２のカウンタＣ2 のカウント値を「０」にリセットする。
【００５３】
この後、目標エンジン回転速度Ｎetが定常状態（｜Ｎet(i) −Ｎet(i-1) ｜≦ΔＮ1 ）に至った後に、エンジン回転速度Ｎe(i)が目標エンジン回転速度Ｎet(i) を含む所定範囲（Ｎet±ΔＮ2 ）内と判定されれば、第２のカウンタＣ2 のカウント値をカウントアップし、エンジン回転速度Ｎe(i)が所定範囲（Ｎet±ΔＮ2 ）外と判定されれば、第２のカウンタＣ2 のカウント値を「０」にリセットする。
【００５４】
この第２のカウンタＣ2 のカウント値が所定値Ｔ2 以上になった時点ｔ5 で、始動状態フラグＸest を「０」にリセットして始動状態の終了（始動状態ではない）と判定する。つまり、エンジン回転速度Ｎe(i)が所定範囲（Ｎet±ΔＮ2 ）内となっている状態が所定時間（所定値Ｔ2 に相当する時間）以上継続したときに、エンジン回転速度Ｎe が目標エンジン回転速度Ｎet付近に収束した（エンジン回転速度Ｎe が目標エンジン回転速度Ｎet付近で安定した）と判断して、始動状態の終了（始動状態ではない）と判定する。
【００５５】
このようにすれば、エンジン回転速度Ｎe が所定範囲（Ｎet±ΔＮ2 ）内に一旦入っても、エンジン回転速度Ｎe が比較的大きく変動するハンチングによってエンジン回転速度Ｎe が直ぐに所定範囲（Ｎet±ΔＮ2 ）からはみ出てしまうような場合に、エンジン回転速度Ｎe が安定していない状態であるにも拘らず始動状態の終了と判定してしまうことを防止できる。
【００５６】
一方、図示されてないが、第１のカウンタＣ1 のカウント値が所定値Ｔ1 以上になった時点で、エンジン回転速度Ｎe が所定値Ｎ3 よりも高い場合には、始動状態フラグＸest を「０」にリセットして始動状態ではないと判定する。つまり、エンジン回転速度Ｎe が目標エンジン回転速度Ｎet付近で安定した状態になっていない場合でも、エンジン１１の始動開始から所定値Ｔ1 に相当する時間（エンジン１１の始動に必要な時間よりも長い時間）が経過しており、且つ、エンジン回転速度が所定値Ｎ3 （エンジン１１が自身の燃焼エネルギで回転を維持できる最小回転速度又はそれよりも少し高い値）よりも高い場合には、既に始動できていると判断して、始動状態ではないと判定する。
【００５７】
このようにすれば、運転者のアクセル操作によってエンジン要求出力が変動し、それに伴って目標エンジン回転速度Ｎetが変動することによって、エンジン回転速度Ｎe が目標エンジン回転速度Ｎet付近で安定したと判定されない状態が続くような場合や、運転者の加速要求によりエンジン回転速度Ｎe と目標エンジン回転速度Ｎetとの差が大きくなったような場合に、いつまでも始動状態と判定し続けることを防止できる。
【００５８】
［アクチュエータ指令値算出ルーチン］
図６に示すアクチュエータ指令値算出ルーチンは、前記図３のベースルーチンのステップ１０３で実行されるサブルーチンであり、所定周期（例えば４ｍｓ周期）で実行され、特許請求の範囲でいう指令値算出手段としての役割を果たす。
本ルーチンが起動されると、まず、ステップ３０１で、エンジン要求出力Ｐe を読み込んだ後、ステップ３０２に進み、目標エンジン回転速度Ｎetを読み込む。
【００５９】
この後、ステップ３０３に進み、エンジン要求出力Ｐe と目標エンジン回転速度Ｎetと用いて目標エンジントルクＴetを次式により算出する。
Ｔet＝Ｐe ×Ｋ1 ／Ｎet
ここで、Ｋ1 は、エンジン出力とエンジン回転速度からエンジントルクを求めるための変換係数である。
【００６０】
この後、ステップ３０４に進み、目標エンジントルクＴetより目標空気充填量Ａgtを次式により算出する。
Ａgt＝Ｔet×Ｋ2
ここで、Ｋ2 は、エンジントルクから筒内に充填する空気量を求めるための変換係数である。
【００６１】
この後、ステップ３０５に進み、目標空気充填量Ａgtより目標空気体積効率Ａvtを次式により算出する。
Ａvt＝Ａgt×Ｋ3
ここで、Ｋ3 は、筒内に充填する空気量から筒内体積に対し充填する空気の体積割合を求めるための変換係数である。
【００６２】
この後、ステップ３０６に進み、目標エンジン回転速度Ｎetと目標空気充填量Ａetとをパラメータとする目標スロットル開度Ｔatのマップを参照して、目標エンジン回転速度Ｎetと目標空気充填量Ａetとに応じた目標スロットル開度Ｔatを算出する。
【００６３】
この後、ステップ３０７に進み、目標エンジン回転速度Ｎetと目標空気体積効率Ａvtとをパラメータとする目標ＶＴ位相角Ｖatのマップを参照して、目標エンジン回転速度Ｎetと目標空気充填量Ａetとに応じた目標ＶＴ位相角Ｖatを算出する。
【００６４】
上記ステップ３０３では、エンジン要求出力Ｐe を目標エンジン回転速度Ｎetで除算して目標エンジントルクＴetを求めるようにしている。しかし、図１２のタイムチャートに示すように、エンジン始動時に、エンジン要求出力Ｐe に対して、目標エンジン回転速度Ｎetは瞬時に立ち上がるのではなく徐々に上昇するため、目標回転速度Ｎetが定常へと至るまでの区間では、目標エンジントルクＴetが、その後の目標回転速度Ｎetが安定しているときよりも高く算出される。これにより、目標空気充填量Ａetや目標スロットル開度Ｔatも高く算出されて、吸入空気量が多くなるため、エンジン回転速度Ｎe が跳ね上がってしまう。
【００６５】
前述したように、エンジン始動時にエンジン回転速度が急上昇すると、ＭＧ１２の負荷トルク（ＭＧ１２によりエンジン１１に作用させる負荷トルク）が急激に増大して、車両に振動が発生する可能性がある。
【００６６】
そこで、本実施例では、図７の指令値補正ルーチンを実行することで、エンジン回転速度の急上昇を抑制するようにスロットル開度指令値の時間当りの変化量とＶＴ位相角指令値の時間当りの変化量を補正する指令値補正を実行する。
【００６７】
［指令値補正ルーチン］
図７に示す指令値補正ルーチンは、前記図３のベースルーチンのステップ１０４で実行されるサブルーチンであり、所定周期（例えば４ｍｓ周期）で実行され、特許請求の範囲でいう指令値算出手段及び指令値補正手段としての役割を果たす。
【００６８】
本ルーチンが起動されると、まず、ステップ４０１で、エンジン要求出力Ｐe を読み込んだ後、ステップ４０２に進み、目標スロットル開度指令値Ｔatと目標ＶＴ位相角指令値Ｖat（図６のルーチンで算出した目標スロットル開度Ｔatと目標ＶＴ位相角Ｖat）を読み込む。
【００６９】
この後、ステップ４０３に進み、始動状態フラグＸest を読み込んだ後、ステップ４０４に進み、始動状態フラグＸest が「１」であるか否かによって、始動状態であるか否かを判定する。
【００７０】
このステップ４０４で、始動状態フラグＸest が「０」であると判定された場合、つまり、始動状態ではないと判定された場合には、ステップ４０５に進み、スロットル開度指令値の補正係数Ｔagをベース値Ｔ0 （例えば１．０）に設定（固定）する。更に、ＶＴ位相角指令値の補正係数Ｖagをベース値Ｖ0 （例えば１．０）に設定（固定）する。この場合、スロットル開度指令値Ｔasの時間当りの変化量の補正とＶＴ位相角指令値Ｖasの時間当りの変化量の補正は実施されない。
【００７１】
一方、上記ステップ４０４で、始動状態フラグＸest が「１」であると判定された場合、つまり、始動状態であると判定された場合には、次のようにしてスロットル開度指令値Ｔasの時間当りの変化量を補正すると共にＶＴ位相角指令値Ｖasの時間当りの変化量を補正する。
【００７２】
ステップ４０６に進み、図９の補正係数Ｔagのテーブルを参照して、エンジン要求出力Ｐe に応じた補正係数Ｔagを算出すると共に、図１０の補正係数Ｖagのテーブルを参照して、エンジン要求出力Ｐe に応じた補正係数Ｖagを算出する。
【００７３】
一般に、エンジン要求出力Ｐe が小さい（運転者の加速要求が小さい）と、ＭＧ１２の負荷トルクの急増による車両振動に対して運転者が違和感を覚え易くなり、逆に、エンジン要求出力Ｐe が大きい（運転者の加速要求が大きい）と、ＭＧ１２の負荷トルクの急増による車両振動に対して運転者が違和感を覚え難くなる。このような特性を考慮して、図９の補正係数Ｔagのテーブルは、エンジン要求出力Ｐe が小さいほど補正係数Ｔagが大きくなってスロットル開度指令値Ｔasの時間当りの変化量を小さくするように設定されている。同様に、図１０の補正係数Ｖagのテーブルは、エンジン要求出力Ｐe が小さいほど補正係数Ｖagが大きくなってＶＴ位相角指令値Ｖasの時間当りの変化量を小さくするように設定されている。
【００７４】
更に、エンジン要求出力Ｐe がある程度大きい領域（運転者の加速要求がある程度大きい領域）では、ＭＧ１２の負荷トルクの急増による車両振動に対して運転者がほとんど違和感を覚えなくなる。そこで、図９の補正係数Ｔagのテーブルは、エンジン要求出力Ｐe が所定値Ｐ1 よりも大きい場合には、補正係数Ｔagがベース値Ｔ0 （例えば１．０）になってスロットル開度指令値Ｔasの時間当りの変化量の補正を実施しない（つまり始動状態ではないときと同じ時間当りの変化量にする）ように設定されている。同様に、図１０の補正係数Ｖagのテーブルは、エンジン要求出力Ｐe が所定値Ｐ1 よりも大きい場合には、補正係数Ｖagがベース値Ｖ0 （例えば１．０）になってＶＴ位相角指令値Ｖasの時間当りの変化量の補正を実施しない（つまり始動状態ではないときと同じ時間当りの変化量にする）ように設定されている。
【００７５】
このようにして補正係数Ｔagと補正係数Ｖagを設定した後、ステップ４０７に進み、前回のスロットル開度指令値Ｔas(i-1) と補正係数Ｔag(i) とを用いて、目標スロットル開度Ｔat(i) を次式によりなまし処理して、今回のスロットル開度指令値Ｔas(i) を求める。
Ｔas(i) ＝Ｔas(i-1) ＋｛Ｔat(i) −Ｔas(i-1) ｝／Ｔag(i)
【００７６】
同様に、前回のＶＴ位相角指令値Ｖas(i-1) と補正係数Ｖag(i) とを用いて、目標ＶＴ位相角Ｖat(i) を次式によりなまし処理して、今回のＶＴ位相角指令値Ｖas(i) を求める。
Ｖas(i) ＝Ｖas(i-1) ＋｛Ｖat(i) −Ｖas(i-1) ｝／Ｖag(i)
【００７７】
［燃料噴射量補正及び点火タイミング補正ルーチン］
図８に示す燃料噴射量補正及び点火タイミング補正ルーチンは、前記図３のベースルーチンのステップ１０５で実行されるサブルーチンであり、所定周期（例えば４ｍｓ周期）で実行され、特許請求の範囲でいう補正手段としての役割を果たす。
【００７８】
本ルーチンが起動されると、まず、ステップ５０１で、エンジン要求出力Ｐe を読み込んだ後、ステップ５０２に進み、エンジン要求出力Ｐe が所定値Ｐ2 よりも小さいか否かを判定する。この所定値Ｐ2 は前記所定値Ｐ1 よりも小さい値である。
【００７９】
このステップ５０２で、エンジン要求出力Ｐe が所定値Ｐ2 よりも小さいと判定された場合には、ステップ５０３に進み、燃料噴射量補正と点火タイミング補正を実行する。一方、上記ステップ５０２で、エンジン要求出力Ｐe が所定値Ｐ2 以上であると判定された場合には、燃料噴射量補正と点火タイミング補正を実行することなく本ルーチンを終了する。
【００８０】
以上説明した図７の指令値補正ルーチンと図８の燃料噴射量補正及び点火タイミング補正ルーチンによる実行例を図１３のタイムチャートを用いて説明する。
始動状態フラグＸest が「１」であると判定されているとき、つまり、始動状態であると判定されているときに、エンジン要求出力Ｐe に応じた補正係数Ｔagと補正係数Ｖagを算出する。この補正係数Ｔagを用いて目標スロットル開度Ｔatをなまし処理してスロットル開度指令値Ｔasを求める。同様に、補正係数Ｖagを用いて目標ＶＴ位相角Ｖatをなまし処理してＶＴ位相角指令値Ｖasを求める。これにより、エンジン回転速度Ｎe の急上昇を抑制するようにエンジン要求出力Ｐe に応じてスロットル開度指令値Ｔasの時間当りの変化量を補正するスロットル開度指令値補正とＶＴ位相角指令値Ｖasの時間当りの変化量を補正するＶＴ位相角指令値補正を実行する。
【００８１】
このように、本実施例では、始動状態であると判定されているときに指令値補正を実行することで、指令値補正を実行しない比較例（図１３の破線参照）に比べて、スロットル開度指令値ＴasとＶＴ位相角指令値Ｖasを緩やかに増加させることができるため、エンジン１１の吸入空気量を緩やかに増加させてエンジン回転速度Ｎe を緩やかに上昇させることができる。これにより、エンジン回転速度Ｎe の吹け上がりを抑制することができると共に、ＭＧ１２の負荷トルクの急激な増大を抑制して車両の振動を抑制することができる。しかも、始動状態と判定されている期間中（つまりエンジン１１の始動開始からエンジン回転速度Ｎe が安定するまでの期間中）は、スロットル開度指令値補正とＶＴ位相角指令値補正を継続することができるため、アクセル開度等に拘らずエンジン１１を始動させる際にエンジン回転速度Ｎe の吹け上がりを抑制しながら車両の振動を抑制することができる。
【００８２】
また、本実施例では、エンジン始動開始からエンジン回転速度Ｎe が上昇して目標エンジン回転速度Ｎetを含む所定範囲（Ｎet±ΔＮ2 ）内で安定するまでを始動状態と判定するようにしている。これにより、エンジン始動開始からエンジン回転速度Ｎe が目標エンジン回転速度Ｎet付近に収束するまで始動状態と判定して指令値補正を継続して車両の振動を抑制することができる。
【００８３】
また、本実施例では、指令値補正の際に、エンジン要求出力Ｐe が小さいほどスロットル開度指令値ＴasとＶＴ位相角指令値Ｖasの時間当りの変化量を小さくするようにしている。これにより、エンジン要求出力Ｐe が小さい（運転者の加速要求が小さい）ほど、ＭＧ１２の負荷トルクの急増による車両振動に対して運転者が違和感を覚え易くなるのに対応して、スロットル開度指令値ＴasとＶＴ位相角指令値Ｖasの時間当りの変化量を小さくして、車両振動の抑制効果を高めることができる。また、エンジンの要求出力Ｐe が所定値Ｐ2 より小さい場合、吸入空気量の変化のみでは、車両の振動を抑制しきれないと判断して、指令値補正に加え、燃料噴射量の増量と点火タイミングの遅角の少なくともどちらか一方を実行することによって、エンジン回転速度Ｎe の吹け上がりを抑制する。
【００８４】
逆に、エンジン要求出力Ｐe が大きい（運転者の加速要求が大きい）ほど、目標スロットル開度Ｔatに対するスロットル開度指令値Ｔasの遅れを小さくし、同様に目標ＶＴ位相角Ｖatに対するＶＴ位相角指令値Ｖasの遅れを小さくして、ドライバビリティへの影響を小さくする（加速性能の低下を抑制する）ことができる。
【００８５】
更に、本実施例では、指令値補正の際に、エンジン要求出力Ｐe が所定値Ｐ1 よりも大きい場合にスロットル開度指令値Ｔasの時間当りの変化量の補正とＶＴ位相角指令値Ｖasの時間当りの変化量の補正を実施しない（つまり始動状態ではない判定されているときと同じ時間当りの変化量にする）ようにしている。これにより、始動状態と判定されているときでも、エンジン要求出力Ｐe が所定値Ｐ1 よりも大きい場合には、通常時（始動状態ではない判定されているとき）と同じように、目標スロットル開度Ｔatに対するスロットル開度指令値Ｔasの応答性と目標ＶＴ位相角Ｖatに対するＶＴ位相角指令値Ｖasの応答性を確保することができ、ドライバビリティを向上させることができる。
【００８６】
また、上記実施例では、スロットル開度指令値及びＶＴ位相角指令値の両方の時間当りの変化量を補正しているが、どちらか一方の時間当りの変化量を補正してもよい。
尚、上記実施例では、エンジン１１を始動させる際に、ＭＧ１２でエンジン１１をクランクキングするシステムに本発明を適用したが、これに限定されず、ＭＧ１２とは別にスタータを搭載し、このスタータでエンジン１１をクランクキングするシステムに本発明を適用しても良い。
【００８７】
また、上記実施例では、エンジン１１とＭＧ１２とを遊星歯車機構１７を介して動力伝達可能に連結した構成のハイブリッド車に本発明を適用したが、これに限定されず、エンジンとＭＧとを動力伝達可能に連結した種々の構成のハイブリッド車に本発明を適用しても良い。
【００８８】
その他、本発明は、図１に示すような吸気ポート噴射式エンジンに限定されず、筒内噴射式エンジンや、吸気ポート噴射用の燃料噴射弁と筒内噴射用の燃料噴射弁の両方を備えたデュアル噴射式のエンジンにも適用して実施できる。
【符号の説明】
【００８９】
１１…エンジン（内燃機関）、１２…ＭＧ（モータジェネレータ）、１７…遊星歯車機構、２６…スロットルバルブ、２９…ハイブリッドＥＣＵ、３１…エンジンＥＣＵ（始動状態判定手段，スロットル開度算出手段，スロットル開度補正手段）
【図１】
2015085808.tif 000003
【図２】
2015085808.tif 000004
【図３】
2015085808.tif 000005
【図４】
2015085808.tif 000006
【図５】
2015085808.tif 000007
【図６】
2015085808.tif 000008
【図７】
2015085808.tif 000009
【図８】
2015085808.tif 000010
【図９】
2015085808.tif 000011
【図１０】
2015085808.tif 000012
【図１１】
2015085808.tif 000013
【図１２】
2015085808.tif 000014
【図１３】
2015085808.tif 000015