図1は、本発明の一実施例としての駆動装置を搭載するハイブリッド自動車20の構成の概略を示す構成図であり、図2は、モータMG1,MG2を含む電気駆動系の構成の概略を示す構成図である。実施例のハイブリッド自動車20は、図示するように、エンジン22と、プラネタリギヤ30と、モータMG1,MG2と、インバータ41,42と、バッテリ50と、冷却装置90と、ハイブリッド用電子制御ユニット(以下、「HVECU」という)70と、を備える。
エンジン22は、ガソリンや軽油などを燃料として動力を出力する内燃機関として構成されている。このエンジン22は、エンジン用電子制御ユニット(以下、「エンジンECU」という)24によって運転制御されている。エンジンECU24は、クランクポジションセンサ23からのクランク角θcrに基づいてクランクシャフト26の回転数、即ちエンジン22の回転数Neを演算している
プラネタリギヤ30は、シングルピニオン式の遊星歯車機構として構成されている。プラネタリギヤ30のサンギヤには、モータMG1のロータが接続されている。プラネタリギヤ30のリングギヤには、駆動輪39a,39bにデファレンシャルギヤ38を介して連結された駆動軸36が接続されている。プラネタリギヤ30のキャリヤには、ダンパ28を介してエンジン22のクランクシャフト26が接続されている。
モータMG1は、永久磁石が埋め込まれたロータと、三相コイルが巻回されたステータと、を有する同期発電電動機として構成されている。このモータMG1は、上述したように、ロータがプラネタリギヤ30のサンギヤに接続されている。モータMG2は、モータMG1と同様の同期発電電動機として構成されている。このモータMG2は、ロータが駆動軸36に接続されている。モータMG1,MG2は、本実施例では、エンジンコンパートメント内に配置されている。
インバータ41は、高電圧系電力ライン54に接続されている。このインバータ41は、図2に示すように、6つのトランジスタT11〜T16と、6つのダイオードD11〜D16と、を備える。トランジスタT11〜T16は、それぞれ、高電圧系電力ライン54の正極母線と負極母線とに対して、ソース側とシンク側になるように、2個ずつペアで配置されている。6つのダイオードD11〜D16は、それぞれ、トランジスタT11〜T16に逆方向に並列接続されている。トランジスタT11〜T16の対となるトランジスタ同士の接続点の各々には、モータMG1の三相コイル(U相,V相,W相)の各々が接続されている。したがって、インバータ41に電圧が作用しているときに、モータ用電子制御ユニット(以下、モータECUという)40によって、対となるトランジスタT11〜T16のオン時間の割合が調節されることにより、三相コイルに回転磁界が形成され、モータMG1が回転駆動される。なお、高電圧系電力ライン54の正極母線と負極母線とには、平滑用のコンデンサ57が接続されている。
インバータ42は、インバータ41と同様に、6つのトランジスタT21〜T26と、6つのダイオードD21〜D26と、を備える。そして、インバータ42に電圧が作用しているときに、モータECU40によって、対となるトランジスタT21〜T26のオン時間の割合が調節されることにより、三相コイルに回転磁界が形成され、モータMG2が回転駆動される。
昇圧回路55は、インバータ41,42が接続された高電圧系電力ライン54と、システムメインリレー56を介してバッテリ50が接続された低電圧系電力ライン59と、に接続されている。この昇圧回路55は、2つのトランジスタT31,T32と、2つのダイオードD31,D32と、リアクトルL1と、を備える。トランジスタT31は、高電圧系電力ライン54の正極母線に接続されている。トランジスタT32は、トランジスタT31と、高電圧系電力ライン54および低電圧系電力ライン59の負極母線と、に接続されている。2つのダイオードD31,D32は、それぞれ、トランジスタT31,T32に逆方向に並列接続されている。リアクトルL1は、トランジスタT31,T32同士の接続点Cn1と、低電圧系電力ライン59の正極母線と、に接続されている。昇圧回路55は、モータECU40によって、トランジスタT31,T32のオン時間の割合が調節されることにより、低電圧系電力ライン59の電力を昇圧して高電圧系電力ライン54に供給したり、高電圧系電力ライン54の電力を降圧して低電圧系電力ライン59に供給したりする。なお、低電圧系電力ライン59の正極母線と負極母線とには、平滑用のコンデンサ58が接続されている。
モータECU40は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROM,データを一時的に記憶するRAM,入出力ポート,通信ポートを備える。モータECU40には、モータMG1,MG2を駆動制御するのに必要な各種センサからの信号が入力ポートを介して入力されている。モータECU40に入力される信号としては、例えば、モータMG1,MG2のロータの回転位置を検出する回転位置検出センサ43,44からの回転位置θm1,θm2や、モータMG1の各相に流れる電流を検出する電流センサ45V,45W,46V,46Wからの相電流、モータMG1のステータに取り付けられた温度センサ47からのステータ温度Tst、コンデンサ57の端子間に取り付けられた電圧センサ57aからのコンデンサ57の電圧(高電圧系電力ライン54の電圧、以下、高電圧系電圧という)VH、コンデンサ58の端子間に取り付けられた電圧センサ58aからのコンデンサ58の電圧(低電圧系電力ライン59の電圧、以下、低電圧系電圧という)VLなどを挙げることができる。モータECU40からは、インバータ41,42のトランジスタT11〜T16,T21〜T26へのスイッチング制御信号、昇圧回路55のトランジスタT31,T32へのスイッチング制御信号などが出力ポートを介して出力されている。モータECU40は、HVECU70と通信ポートを介して接続されており、HVECU70からの制御信号によってモータMG1,MG2を駆動制御すると共に必要に応じてモータMG1,MG2の駆動状態に関するデータをHVECU70に出力する。モータECU40は、回転位置検出センサ43,44からのモータMG1,MG2のロータの回転位置θm1,θm2に基づいてモータMG1,MG2の回転数Nm1,Nm2を演算している。
冷却装置90は、車両前方に設置されて外気との熱交換により冷却オイルを冷却するオイルクーラ96と、オイルクーラ96とモータMG1,MG2とインバータ41,42とを接続する循環路92と、循環路92内の冷却オイルを循環させるポンプ94と、を備える。
バッテリ50は、例えばリチウムイオン二次電池として構成されており、上述したように、システムメインリレー56を介して低電圧系電力ライン59に接続されている。バッテリ50は、バッテリ用電子制御ユニット(以下、バッテリECUという)52によって管理される。
バッテリECU52は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。バッテリECU52には、バッテリ50を管理するのに必要な各種センサからの信号が入力ポートを介して入力されている。各種センサからの信号としては、例えば、バッテリ50の端子間に設置された電圧センサ51aからの電池電圧Vbや、バッテリ50の出力端子に取り付けられた電流センサ51bからの電池電流Ib、バッテリ50に取り付けられた温度センサ51cからの電池温度Tbなどを挙げることができる。バッテリECU52は、HVECU70と通信ポートを介して接続されている。このバッテリECU52は、必要に応じてバッテリ50の状態に関するデータをHVECU70に出力する。バッテリECU52は、バッテリ50を管理するために、電池電流Ibの積算値に基づいて、蓄電割合SOCを演算している。蓄電割合SOCは、バッテリ50の全容量に対する放電可能な電力の容量の割合である。また、バッテリECU52は、蓄電割合SCOと電池温度Tbとに基づいてバッテリ50が充放電可能な電力の最大値である入出力制限Win,Woutも演算している。
HVECU70は、CPU72を中心とするマイクロプロセッサとして構成されており、CPU72の他に、処理プログラムを記憶するROM74やデータを一時的に記憶するRAM76、時間を計測するタイマ78、入出力ポート、通信ポートを備える。HVECU70には、各種センサからの信号が入力ポートを介して入力されている。各種センサからの信号としては、例えば、イグニッションスイッチ80からのイグニッション信号やシフトレバー81の操作位置を検出するシフトポジションセンサ82からのシフトポジションSP、アクセルペダル83の踏み込み量を検出するアクセルペダルポジションセンサ84からのアクセル開度Acc、ブレーキペダル85の踏み込み量を検出するブレーキペダルポジションセンサ86からのブレーキペダルポジションBP、車速センサ88からの車速V、エンジンコンパートメント内に配置された外気温センサ89からの外気温、循環路92に設けられた油温センサ98からのオイル温度などを挙げることができる。また、HVECU70には、各種制御信号が出力ポートを介して出力されている。各種制御信号としては、例えば、システムメインリレー56への駆動信号やポンプ94への駆動信号などを挙げることができる。
ここで、実施例の駆動装置としては、モータMG1と、インバータ41と、バッテリ50と、電子制御ユニット70と、が相当する。
こうして構成された実施例のハイブリッド自動車20では、走行モードとして、エンジン22の運転を伴って走行するハイブリッド走行モード(HV走行モード)と、エンジン22の運転を停止して走行する電動走行モード(EV走行モード)とを有している。
HV走行モードで走行するときには、HVECU70は、アクセル開度Accと車速Vとに基づいて走行に要求される要求トルクTr*を設定し、設定した要求トルクTr*に駆動軸36の回転数Nr(例えば、モータMG2の回転数Nm2や車速Vに換算係数を乗じて得られる回転数)を乗じて走行に要求される走行用パワーPdrv*を計算する。次に、計算した走行用パワーPdrv*からバッテリ50の蓄電割合SOCに基づくバッテリ50の充放電要求パワーPb*(バッテリ50を充電するときは負の値)を減じてエンジン要求パワーPe*を設定する。続いて、エンジン要求パワーPe*を効率よくエンジン22から出力することができるエンジン22の動作ライン(例えば燃費最適動作ライン)とエンジン要求パワーPe*とに基づいてエンジン22の運転ポイントとしての目標回転数Ne*および目標トルクTe*を設定する。そして、エンジン22を目標回転数Ne*および目標トルクTe*で運転すると共にバッテリ40の入出力制限Win,Woutの範囲内で要求トルクTr*が駆動軸36に出力されるようモータMG1,MG2のトルク指令Tm1*,Tm2*を設定し、目標回転数Ne*および目標トルクTeをエンジンECU24に送信し、トルク指令Tm1*,Tm2*をモータECU40に送信する。エンジンECU24は、目標回転数Ne*と目標トルクTe*とによってエンジン22が運転されるようエンジン22の吸入空気量制御や燃料噴射制御,点火制御などを行なう。モータECU40は、モータMG1,MG2がトルク指令Tm1*,Tm2*で駆動されるようインバータ41,42のトランジスタT11〜T16,T21〜T26をスイッチング制御すると共に高電圧系電力ライン42の電圧VHが目標電圧VH*となるよう昇圧コンバータ40のトランジスタT21,T22をスイッチング制御する。このHV走行モードでは、エンジン要求パワーPe*が停止用閾値Pstop未満に至ったときなどのエンジン停止条件が成立すると、エンジン22の運転を停止してEV走行モードでの走行に移行する。
ここで、モータMG1の駆動制御は、モータECU40に含まれる図3の制御ブロックによって行なわれる。図3に示すように、モータMG1の駆動制御は、まず、トルク指令Tm1*に基づいて電流指令生成器61によりdq軸座標系(永久磁石の磁束方向をd軸としその直交方向をq軸とした座標系)におけるd軸,q軸の電流指令Id*,Iq*を生成する。電流指令生成器61は、トルク指令に対応する電流指令の関係を予め定めた電流指令テーブルを用いてd軸,q軸の電流指令Id*,Iq*を生成する。次に、モータMG1のU相,V相,W相にそれぞれ流れる電流の総和が値0であるとして、モータMG1の制御用回転角θを用いて座標変換器66により電流センサ45V,45WからのV相電流Iv,W相電流Iwをd軸電流Id,q軸電流Iqに変換する(三相二相変換)。モータMG1の制御用回転角θには、回転位置センサ43により検出される回転角θm1を用いることができる。続いて、設定したd軸電流指令Id*,q軸電流指令Iq*と電流フィードバックのためのd軸電流Id,q軸電流Iqとの差分ΔId,ΔIqを減算器62d,62qにより演算する。そして、演算した差分ΔId,ΔIqに基づいて電圧指令変換器63d,63qによりd軸電圧指令Vd*,q軸電圧指令Vq*を生成する。d軸電圧指令Vd*,q軸電圧指令Vq*を生成すると、上述したモータMG1の制御用回転角θを用いて座標変換器64によりd軸電圧指令Vd*,q軸電圧指令Vq*を相電圧指令Vu*,Vv*,Vw*に変換する(二相三相変換)。そして、相電圧指令Vu*,Vv*,Vw*に基づいてPWM変換器65によりパルス幅変調信号を生成し、生成したパルス幅変調制御信号に基づいてインバータ41のトランジスタをスイッチングすることによって直流電力を三相交流電力としてモータMG1に印加する。なお、モータMG2についても図3と同様の制御ブロックを用いて駆動制御することができるため、図示およびその説明を省略する。
EV走行モードで走行するときには、HVECU70は、アクセル開度Accと車速Vとに基づいて要求トルクTr*を設定し、モータMG1のトルク指令Tm1*に値0(ゼロトルク指令)を設定すると共にバッテリ50の入出力制限Win,Woutの範囲内で要求トルクTr*が駆動軸36に出力されるようモータMG2のトルク指令Tm2*を設定してモータECU40に送信する。モータECU40は、モータMG1,MG2がトルク指令Tm1*,Tm2*で駆動されるようインバータ41,42のスイッチング素子のスイッチング制御を行なう。モータMG1のトルク指令Tm1*は値0(ゼロトルク指令)であるから、モータECU40は、モータMG1からトルクが出力されないようにインバータ41を制御する。このEV走行モードでは、HV走行モードによる走行時と同様に計算したエンジン要求パワーPe*が始動用閾値Pstart以上に至ったときなどエンジン22の始動条件が成立したときに、エンジン22を始動してHV走行モードでの走行に移行する。
エンジン22とモータMG1と駆動軸36とはそれぞれプラネタリギヤ30のキャリアとサンギヤとリングギヤとに接続されているため、EV走行モードの移行によってエンジン22の運転が停止されると、モータMG1は、駆動軸36の回転数Nrとプラネタリギヤ30のギヤ比ρに応じた回転数(Nr/ρ)で回転し、回転数に応じた逆起電圧が発生する。
次に、モータMG1のトルク指令Tm1*が値0(ゼロトルク指令)のとき(EV走行モードで走行するとき)のモータMG1の動作について説明する。図4は、実施例のHVECU70により実行されるゼロトルク指令時モータ制御ルーチンの一例を示すフローチャートである。このルーチンは、モータMG1のトルク指令Tm1*が値0のときに所定時間毎(例えば、数msec毎)に繰り返し実行される。
ゼロトルク指令時モータ制御ルーチンが実行されると、HVECU70のCPUは、まず、高電圧系電圧VHやステータ温度Tst、モータ回転速度ωm1を入力する(ステップS100)。ここで、高電圧系電圧VHとステータ温度Tstは、電圧センサ57aと温度センサ47によりそれぞれ検出されたものをモータECU40から通信により入力するものとした。モータ回転速度ωm1は、回転位置検出センサ43により検出されたモータMG1の回転位置θm1に基づいて演算される回転数Nm1に換算係数(2π/60)を乗じたものをモータECU40から通信により入力するものとした。
次に、ゼロトルク制御を実行中か或いはシャットダウン制御を実行中かを判定する(ステップS110)。ゼロトルク制御は、モータMG1からトルクが出力されないようトランジスタT11〜T16をスイッチングする制御であり、シャットダウン制御は、全てのトランジスタT11〜T16をシャットダウン(ゲート遮断)する制御である。
ゼロトルク制御は、具体的には、モータMG1のd軸およびq軸に電流が流れないよう値0のdq軸電流指令Id*,Iq*を用いてdq軸電圧指令Vd*,Vq*を設定し、dq軸電圧指令Vd*、Vq*に基づき生成される制御信号によりインバータ41(トランジスタT11〜T16)をスイッチングすることにより行なう。ここで、dq軸座標系におけるモータの電圧方程式は、次式(1)により示すことができる。式(1)中、Rはコイルの抵抗値を示し、Ldはd軸インダクタンスを示し、Lqはq軸インダクタンスを示し、ωはモータの電気角速度を示し、Φは永久磁石の鎖交磁束を示す。
d軸電流Idおよびq軸電流Iqを値0とすると、d軸電圧Vdおよびq軸電圧Vqは式(2)で示される。ωΦは逆起電圧であるから、d軸電流指令Idおよびq軸電流Iqが値0となるようにインバータをスイッチングすることにより、q軸電圧Vqが逆起電圧ωΦと一致する。即ち、d軸電流指令Id*およびq軸電流指令Iq*を値0としてゼロトルク制御を実行すると、q軸電圧指令Vq*はモータの逆起電圧ωΦと一致する。
ステップS110でゼロトルク制御を実行中であると判定すると、q軸電圧指令Vq*を入力し(ステップS120)、q軸電圧指令Vq*が高電圧系電圧VH以下であるか否かを判定する(ステップS130)。上述したように、ゼロトルク制御において、d軸電流指令Id*およびq軸電流指令Iq*を値0とすると、q軸電圧指令Vq*は逆起電圧と一致する。このため、ステップS120の判定は、モータMG1の逆起電圧が高電圧系電圧VH以下であるか否かを判定するものに相当する。q軸電圧指令Vq*が高電圧系電圧VH以下でない、即ち高電圧系電圧VHよりも大きいと判定すると、ゼロトルク制御を継続して本ルーチンを終了する。モータMG1の逆起電圧が高電圧系電圧VHよりも大きいときにインバータ41をシャットダウン(ゲート遮断)すると、逆起電圧に基づく電流が高電圧系電力ライン54に流れ、モータMG1が発電機として機能し、モータMG1から制動力が出力される。これを防止するために、モータMG1の逆起電圧が高電圧系電圧VHよりも大きいときには、ゼロトルク制御を実行するものとした。但し、ゼロトルク制御は、式(2)に示したように、q軸に電圧が作用するようインバータ41をスイッチングするため、シャットダウン制御に比して効率は悪化する。
q軸電圧指令Vq*が高電圧系電圧VH以下であると判定すると、入力したq軸電圧指令Vq*とモータ回転速度ωm1とに基づいて次式(3)により逆起電圧定数Keを算出し(ステップS140)、算出した逆起電圧定数Keを移行直前逆起電圧定数Ke0としてRAM76に記憶する(ステップS150)。上述したように、ゼロトルク制御において、d軸電流指令Id*およびq軸電流指令Iq*を値0とすると、q軸電圧指令Vq*は逆起電圧と一致するから、式(3)のKeは、モータMG1の逆起電圧をモータ回転速度ωm1で除したものに相当する。
Ke=Vq*/ωm1 (3)
そして、インバータ41のトランジスタT11〜T16をシャットダウン(ゲート遮断)するシャットダウン制御へ移行し(ステップS160)、タイマ78の計測を開始して(ステップS170)、本ルーチンを終了する。
シャットダウン制御へ移行すると、次に、ゼロトルク指令時モータ制御ルーチンが実行された場合に、ステップS110において、ゼロトルク制御でなく、シャットダウン制御を実行中であると判定する。この場合、まず、移行直前ロータ温度Tro0を推定する(ステップS180)。移行直前ロータ温度Tro0は、シャットダウン制御への移行直前におけるモータMG1のロータ温度を示すものであり、移行直前逆起電圧定数Ke0に基づいて推定される。移行直前逆起電圧定数Ke0は、シャットダウン制御への移行直前にゼロトルク制御において推定された逆起電圧定数を示すものである。ここで、逆起電圧定数は、上述した式(2)および(3)からわかるように、ロータに用いられる永久磁石の鎖交磁束と等価であり、永久磁石の鎖交磁束は永久磁石の温度と相関関係を有しているため、移行直前逆起電圧定数Ke0に基づいてシャットダウン制御への移行直前におけるロータ温度(移行直前ロータ温度Tro0)を推定することができる。具体的には、移行直前ロータ温度Tro0と移行直前逆起電圧定数Ke0との関係を予め求めてマップとしてROM74に記憶しておき、移行直前逆起電圧定数Ke0が与えられると、マップから対応する移行直前ロータ温度Tro0を導出するものとした。
移行直前ロータ温度Tro0を推定すると、移行直前ロータ温度Tro0とステータ温度Tstとシャットダウン制御へ移行されてからの経過時間であるタイマ78の計測値tとに基づいて現在の逆起電圧定数Keを推定し(ステップS190)、推定した逆起電圧定数Keとモータ回転速度ωm1との積によりモータMG1の逆起電圧Vbeを算出する(ステップS200)。ここで、シャットダウン制御を実行しているときの逆起電圧定数Keは、図5に例示する逆起電圧定数設定用マップを用いて推定される。具体的には、移行直前逆起電圧定数Ke0から時間(計測値t)の経過と共に最悪値に向かって上昇し且つステータ温度Tstが低いほど上昇レートが大きくなるように逆起電圧定数Keを推定することにより行なわれる。ここで、最悪値とは、ロータ(永久磁石)の温度が想定される使用温度範囲の下限温度となったときの逆起電圧定数であり、実験などにより予め求められた値が用いられる。こうして逆起電圧Vbeを算出すると、算出した逆起電圧Vbeが高電圧系電圧VHよりも大きいか否かを判定する(ステップS210)。逆起電圧定数Vbeが高電圧系電圧VHよりも大きくない、即ち高電圧系電圧VH以下であると判定すると、シャットダウン制御を維持したまま本ルーチンを終了する。一方、逆起電圧定数Vbeが高電圧系電圧VHよりも大きいと判定すると、ゼロトルク制御へ移行し(ステップS220)、タイマ78の計測を終了すると共にその計測値tをリセットして(ステップS230)、本ルーチンを終了する。
ここで、シャットダウン制御を実行しているときには、d軸電圧指令Vq*によって逆起電圧Vbeを推定できないため、逆起電圧定数KeとモータMG1の回転速度ωm1とから逆起電圧Vbeを算出する必要がある。このとき、逆起電圧定数Keとして、予め定めた一定値を用いることが考えられる。しかし、上述したように、逆起電圧定数Keはロータ(永久磁石)の温度変化によって変化するため、逆起電圧定数Keを一定値とすると、逆起電圧Vbeを正確に算出することができない。この結果、実際には逆起電圧Vbeが高電圧系電圧VHを超えているにも拘わらず、逆起電圧Vbeが高電圧系電圧VH以下と誤判定される場合が生じる。この場合、シャットダウン制御が実行されるため、モータMG1が発電機として機能し、モータMG1から制動力が出力されてしまう。一方で、逆起電圧定数に大きなマージンを含めるものとすると、モータMG1が発電機として機能するのを防止できるが、シャットダウン制御の実行領域が狭くなり、効率が悪化してしまう。ここで、シャットダウン制御(ゲート遮断)が実行されると、モータMG1のロータ温度が時間の経過と共に徐々にロータ周囲の温度(ステータ温度Tst)に近づくと考えられる。そこで、本実施例では、移行直前ロータ温度Tro0とステータ温度Tstとタイマ78の計測値tとに基づいて逆起電圧定数Keを推定し、推定した逆起電圧定数Keと回転速度ωm1との積により逆起電圧Vbeを算出する。これにより、逆起電圧Vbeをより正確に算出することができ、逆起電圧Vbeと高電圧系電圧VHとを比較する際の誤判定を抑制することができる。また、逆起電圧定数を一定値(最悪値)とするものに比して、シャットダウン制御の実行領域を広げることができるため、効率を向上させることができる。なお、本実施例では、逆起電圧定数Keは、ステータ温度Tstに拘わらず最終的には最悪値に収束するように推定されるため、最終的には比較的大きなマージンを含むことになる。しかし、ステータ温度Tstが高いときには低いときに比して、逆起電圧定数Keが最悪値に収束するまでの上昇が遅くなるため、逆起電圧定数Keに基づいて算出される逆起電圧Vbeの上昇が遅くなる。したがって、過渡的にはシャットダウン制御の実行領域を広げることができるため、効率を高めることができる。
図6は、シャットダウン制御領域が変化する様子を示す説明図である。なお、図6では、シャットダウン制御領域は、モータ回転速度ωm1が閾値(VH/Ke)以下となる領域である。本実施例では、シャットダウン制御を実行しているときには、逆起電圧定数Keは最悪値に向かって時間の経過と共に徐々に上昇する。このため、閾値(VH/Ke)は、シャットダウン制御への移行直前に推定された逆起電圧の推定値に基づく値から最悪値に基づく値へ向かって時間の経過と共に徐々に小さくなっていく。そして、ステータ温度Tstが高いほど閾値(VH/Ke)の移動が遅くなるため、その分、シャットダウン制御の実行領域が広がるから、効率を高めることができる。一方、ステータ温度Tstが低いときには閾値(VH/Ke)の移動が速くなるため、シャットダウン制御の実行領域が狭くなるものの、モータMG1が発電機として機能するのを防止することができる。
以上説明した実施例のハイブリッド自動車20によれば、モータMG1にゼロトルク指令がなされたときに、逆起電圧Vbeが高電圧系電圧VHより大きいときにはモータMG1のdq軸に電流が流れないようにdq軸電圧指令Vd*,Vq*を設定してインバータ41をスイッチングするゼロトルク制御を実行する。ゼロトルク制御を実行している最中にq軸電圧指令Vq*が高電圧系電圧VH以下となったときには、シャットダウン制御へ移行する。ゼロトルク制御を実行しているときには、モータMG1のq軸電圧指令Vq*は逆起電圧と一致するため、q軸電圧指令Vq*が高電圧系電圧VH以下のときにシャットダウン制御へ移行することにより、効率を高めることができる。ゼロトルク制御を実行しているときには、q軸電圧指令Vq*をモータ回転速度ωm1で除した値により移行直前逆起電圧定数Ke0を推定し、シャットダウン制御を実行しているときには、ゼロトルク制御において推定した移行直前逆起電圧定数Ke0から移行直前ロータ温度Tro0を推定し、移行直前ロータ温度Tro0とステータ温度Tstとシャットダウン制御へ移行してからの経過時間tとに基づいて逆起電圧定数Keを推定して逆起電圧Vbeを算出する。逆起電圧定数Keの推定は、移行直前逆起電圧定数Ke0から時間の経過と共に上昇し且つモータMG1のステータ温度Tstが低いほど上昇レートが大きくなるように行なう。逆起電圧定数KeはモータMG1のロータの温度変化によって変化し、ロータ温度はシャットダウン制御の実行中にロータ周囲の温度(ステータ温度Tst)に時間の経過と共に徐々に近づくと考えられる。このため、シャットダウン制御へ移行した後は、移行直前逆起電圧定数Ke0から求められる移行直前ロータ温度Tro0とステータ温度Tstとタイマ78の計測値tによってロータの温度変化を予測することで、シャットダウン制御においても逆起電圧Vbeを正確に算出することが可能となる。これにより、ゼロトルク制御とシャットダウン制御との切り替えを適切に行なうことができる。
実施例のハイブリッド自動車20では、モータMG1のステータに設けられた温度センサ47によりシャットダウン制御中のモータMG1のロータ温度を推定するためのステータ温度Tstを検出するものとした。しかし、モータMG1が設けられたエンジンコンパートメント内に配置された外気温センサ89からの外気温に基づいてモータMG1のステータ温度を推定するものとしてもよい。また、モータMG1を冷却する冷却オイルの温度を検出する油温センサ98からの油温に基づいてモータMG1のステータ温度を推定するものとしてもよい。
実施例のハイブリッド自動車20では、シャットダウン制御を実行しているときには、シャットダウン制御への移行直前にゼロトルク制御において推定された移行直前逆起電圧定数Ke0から時間の経過と共に最悪値に向かって徐々に上昇し且つモータMG1のステータ温度Tstが低いほど上昇レートが大きくなるように逆起電圧定数Keを推定するものとした。しかし、図7の逆起電圧定数設定用マップに示すように、モータMG1のステータ温度Tstが低いほど大きくなるように逆起電圧定数の目標値を設定し、移行直前逆起電圧定数Ke0から時間の経過と共に設定した目標値に向かって徐々に上昇し且つステータ温度Tstが低いほど大きな上昇レートで上昇するように逆起電圧定数Keを推定するものとしてもよい。
実施例のハイブリッド自動車20では、モータMG1のゼロトルク制御において、dq軸電流指令Id*,Iq*を値0としたときのq軸電圧指令Vq*をモータMG1の逆起電圧として推定した。しかし、回転位置センサ43にオフセット誤差が含まれる場合(永久磁石の磁束方向がd軸に対して所定角αズレている場合)、d軸電流およびq軸電流を値0としても、次式(4)に示すように、q軸電圧Vqは、逆起電圧ωΦに所定角αの余弦を乗じた値となり、逆起電圧ωΦと一致しない。このため、式(4)から求まる次式(5)を用いて逆起電圧ωΦを算出してもよい。
実施例のハイブリッド自動車20では、シャットダウン制御を実行しているときには、移行直前逆起電圧定数Ke0から移行直前ロータ温度Tro0を推定し、移行直前ロータ温度Tro0とステータ温度Tstと経過時間tとに基づいて逆起電圧定数Keを推定し、推定した逆起電圧定数Keとモータ回転速度ωm1とに基づいて逆起電圧Vbeを算出した。しかし、移行直前逆起電圧定数Ke0とステータ温度Tstとモータ回転速度ωm1とシャットダウン制御へ移行してからの経過時間tとに基づいて直接に逆起電圧定数Vbeを算出してもよい。
実施例のハイブリッド自動車20では、昇圧回路55を備えるものとしたが、昇圧回路55を備えないものとしてもよい。
実施例では、本発明を、エンジン22とモータMG1とプラネタリギヤ30とモータMG2とバッテリ50とを備えるハイブリッド自動車20において、モータ運転モードにより走行する場合のモータMG1の制御に適用した。しかし、本発明を、前輪に接続された前輪用モータと、後輪に接続された後輪用モータとを備える自動車において、走行に大きな駆動力が要求されたときや低μ路を走行するときなどの所定条件が成立したときに前輪用モータおよび後輪用モータの両方を駆動し、所定条件が成立していないときに一方のモータ(前輪用モータ)のみを駆動するものとした場合の他方のモータ(後輪用モータ)の制御に適用してもよい。また、本発明を、走行用のモータを備える自動車において、走行中にシフトレバーがニュートラルポジションに操作されたときのモータの制御に適用するものとしてもよい。
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、モータMG1が「電動機」に相当し、バッテリ50が「蓄電装置」に相当し、インバータ41が「インバータ」に相当し、図4のゼロトルク指令時モータ制御ルーチンを実行するHVECU70が「制御装置」に相当し、q軸電圧指令Vq*が「電圧指令」に相当し、高電圧系電圧VHが「蓄電装置側電圧」に相当する。
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。