図1は、本発明の一実施例としての駆動装置を搭載する電気自動車20の構成の概略を示す構成図である。実施例の電気自動車20は、図示するように、モータ32と、インバータ34と、蓄電装置としてのバッテリ36と、電子制御ユニット50と、を備える。
モータ32は、同期発電電動機として構成されており、永久磁石が埋め込まれた回転子と、三相コイルが巻回された固定子と、を備える。このモータ32は、回転子が駆動輪22a,22bにデファレンシャルギヤ24を介して連結された駆動軸26に接続されている。このモータ32の回転子には、モータ32の回転子の回転位置を検出する回転位置検出センサ32aが取り付けられている。また、モータ32のU相には、メイン電流センサ32uaおよびサブ電流センサ32ubが取り付けられており、モータ32のV相には、メイン電流センサ32vaおよびサブ電流センサ32vbが取り付けられており、モータ32のW相には、メイン電流センサ32waおよびサブ電流センサ32wbが取り付けられている。
インバータ34は、モータ32の駆動に用いられると共に電力ライン38を介してバッテリ36に接続されている。このインバータ34は、6つのスイッチング素子としてのトランジスタT11~T16と、6つのトランジスタT11~T16のそれぞれに並列に接続された6つのダイオードD11~D16と、を有する。トランジスタT11~T16は、それぞれ、電力ライン38の正極側ラインと負極側ラインとに対してソース側とシンク側になるように2個ずつペアで配置されている。また、トランジスタT11~T16の対となるトランジスタ同士の接続点には、モータ32の各相(U相、V相、W相)が接続されている。したがって、インバータ34に電圧が作用しているときに、電子制御ユニット50によって、対となるトランジスタT11~T16のオン時間の割合が調節されることにより、三相コイルに回転磁界が形成され、モータ32が回転駆動される。
バッテリ36は、例えばリチウムイオン二次電池やニッケル水素二次電池として構成されている。このバッテリ36は、上述したように、電力ライン38を介してインバータ34に接続されている。
電子制御ユニット50は、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMや、データを一時的に記憶するRAM、入出力ポートを備える。電子制御ユニット50には、各種センサからの信号が入力ポートを介して入力されている。電子制御ユニット50に入力される信号としては、例えば、回転位置検出センサ32aからの回転位置θmや、メイン電流センサ32uaおよびサブ電流センサ32ubからのモータ32のU相の相電流Iua,Iub、メイン電流センサ32vaおよびサブ電流センサ32vbからのモータ32のV相の相電流Iva,Ivb、メイン電流センサ32waおよびサブ電流センサ32wbからのモータ32のW相の相電流Iwa,Iwbを挙げることができる。また、バッテリ36の端子間に取り付けられた図示しない電圧センサからのバッテリ36の電圧Vbや、バッテリ36の出力端子に取り付けられた図示しない電流センサからのバッテリ36の電流Ibも挙げることができる。さらに、イグニッションスイッチ60からのイグニッション信号や、シフトレバー61の操作位置を検出するシフトポジションセンサ62からのシフトポジションSPも挙げることができる。加えて、アクセルペダル63の踏み込み量を検出するアクセルペダルポジションセンサ64からのアクセル開度Accや、ブレーキペダル65の踏み込み量を検出するブレーキペダルポジションセンサ66からのブレーキペダルポジションBP、車速センサ68からの車速Vも挙げることができる。電子制御ユニット50からは、インバータ34のトランジスタT11~T16へのスイッチング制御信号などが出力ポートを介して出力されている。電子制御ユニット50は、回転位置検出センサ32aからのモータ32の回転子の回転位置θmに基づいてモータ32の電気角θeや回転数Nmを演算している。
こうして構成された実施例の電気自動車20では、アクセル開度Accと車速Vとに基づいて駆動軸26に要求される要求トルクTd*を設定し、要求トルクTd*をモータ32のトルク指令Tm*に設定し、モータ32がトルク指令Tm*で駆動されるようにパルス幅変調制御(PWM制御)によりインバータ34のトランジスタT11~T16のスイッチング制御を行なう。
次に、実施例の電気自動車20の動作、特に、インバータ34の制御について説明する。図2は、電子制御ユニット50の機能ブロックを示す機能ブロック図である。図2では、見やすさを考慮して、回転位置検出センサ32aや、メイン電流センサ32ua、サブ電流センサ32ub、メイン電流センサ32va、サブ電流センサ32vbから電子制御ユニット50に入力される信号については図示を省略した。電子制御ユニット50は、図2に示すように、機能ブロックとして、入力切替部51と、モータ制御部52と、異常検出部53と、を備える。
入力切替部51には、メイン電流センサ32uaおよびサブ電流センサ32ubからのモータ32のU相の相電流Iua,Iubや、メイン電流センサ32vaおよびサブ電流センサ32vbからのモータ32のV相の相電流Iva,Ivb、メイン電流センサ32waおよびサブ電流センサ32wbからのモータ32のW相の相電流Iwa,Iwbが入力される。入力切替部51は、異常検出部53からの情報(メイン電流センサ32uaやサブ電流センサ32ub、メイン電流センサ32va、サブ電流センサ32vb、メイン電流センサ32wa、サブ電流センサ32wbに異常が生じているか否かの判定結果)に基づいて、V相の相電流Ivに相電流Ivaまたは相電流Ivbを設定し、W相の相電流Iwに相電流Iwaまたは相電流Iwbを設定し、U相の相電流Iuに値0から相電流Ivaと相電流Iwaとの和を減じた値または値0から相電流Ivbと相電流Iwbとの和を減じた値を設定し、設定した相電流Iu,Iv,Iwをモータ制御部52に出力する。
モータ制御部52は、入力切替部51からの各相の相電流Iu,Iv,Iwと、回転位置検出センサ32aからのモータ32の回転子の回転位置θmと、に基づいてトランジスタT11~T16のPWM信号を生成してトランジスタT11~T16に出力する。具体的には、以下の通りである。モータ32の電気角θeを用いてU相、V相の相電流Iu,Iv,Iwをd軸,q軸の電流Id,Iqに座標変換(3相-2相変換)する。また、アクセル開度Accと車速Vとに基づくモータ32のトルク指令Tm*に基づいてd軸,q軸の電流指令Id*,Iq*を設定する。続いて、d軸,q軸の電流指令Id*,Iq*および電流Id,Iqを用いて式(1)および式(2)によりd軸,q軸の電圧指令Vd*,Vq*を設定する。ここで、式(1)および式(2)は、d軸,q軸の電流指令Id*,Iq*と電流Id,Iqとの差分が打ち消されるようにするための電流フィードバック制御における関係式であり、式(1)および式(2)中、「kd1」,「kq1」は,比例項のゲインであり、「kd2」,「kq2」は、積分項のゲインである。そして、モータ32の電気角θeを用いてd軸,q軸の電圧指令Vd*,Vq*を各相の電圧指令Vu*,Vv*,Vw*に座標変換(2相-3相変換)し、各相の電圧指令Vu*,Vv*,Vw*と搬送波との比較によりトランジスタT11~T16のPWM信号を生成してトランジスタT11~T16に出力する。こうした制御により、トルク指令Tm*でモータ32を駆動しながら車両を走行させることができる。
Vd*=kd1×(Id*-Id)+kd2×∫(Id*-Id)dt (1)
Vq*=kq1×(Iq*-Iq)+kq2×∫(Iq*-Iq)dt (2)
異常検出部53には、メイン電流センサ32uaおよびサブ電流センサ32ubからのモータ32のU相の相電流Iua,Iubや、メイン電流センサ32vaおよびサブ電流センサ32vbからのモータ32のV相の相電流Iva,Ivb、メイン電流センサ32waおよびサブ電流センサ32wbからのモータ32のW相の相電流Iwa,Iwbが入力される。そして、異常検出部53は、各相の相電流Iua,Iva,Iwa,Iub,Ivb,Iwbを用いて、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbに異常が生じているか否かを判定し、この判定結果を入力切替部51に出力する。この異常の判定については後述する。
なお、入力切替部51は、異常検出部53からメイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,vb,32wbに異常が生じていないという情報が入力されているときには、V相の相電流Ivに相電流Ivaを設定し、W相の相電流Iwに相電流Iwaを設定し、U相の相電流Iuに値0から相電流Ivaと相電流Iwaとの和を減じた値を設定し、設定した相電流Iu,Iv,Iwをモータ制御部52に出力する。モータ制御部52は、入力切替部51からの各相の相電流Iu,Iv,Iwと、回転位置検出センサ32aからのモータ32の回転子の回転位置θmと、に基づいてトランジスタT11~T16のPWM信号を生成してトランジスタT11~T16に出力する。このように、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,vb,32wbに異常が生じていないときには、相電流Iva,Iwaから相電流Iu,Iv,Iwを設定し、設定した相電流Iu,Iv,Iwを用いてトルク指令Tm*でモータ32を駆動する通常走行モードで走行する。
次に、こうして構成された実施例の電気自動車20の動作、特に、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbの異常を検出したときの動作について説明する。最初に、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbに異常が生じているか否かを判定する処理について説明し、次に、異常を検出したときの動作について説明する。
図3は、実施例の電子制御ユニット50の異常検出部53により実行される判定ルーチンの一例を示すフローチャートである。本ルーチンは、繰り返し実行される。本ルーチンが実行されると、電子制御ユニット50の異常検出部53は、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbから各相の相電流Iua,Iva,Iwa,Iub,Ivb,Iwbを入力する処理を実行する(ステップS100)。
続いて、相電流Iua,Iva,Iwaの総和が値0であるか否かを判定する(ステップS110)。この判定では、相電流Iua,Iva,Iwaの総和が値0とは異なるが値0に近い値であるときも相電流Iua,Iva,Iwaの総和が値0であると判定する。メイン電流センサ32ua,32va,32waの何れかに異常が生じているときには、相電流Iua,Iva,Iwaの総和が値0とはならない。以下、こうした3相の相電流の総和が値0とはならない異常を「総和異常」と称することがある。
ステップS110で相電流Iua,Iva,Iwaの総和が値0であるときには、メイン電流センサ32ua,32va,32waが正常であると判断して、ステップS160へ進む。
ステップS110で相電流Iua,Iva,Iwaの総和が値0ではないときには、総和異常が生じている、即ち、メイン電流センサ32ua,32va,32waの何れかに異常が生じていると判断して、続いて、相電流Ivaと相電流Ivbとが等しく、且つ、相電流Iwaと相電流Iwbとが等しい、か否かを判定する(ステップS120)。この判定では、相電流Ivaと相電流Ivbとの偏差が僅かであり、相電流Ivaと相電流Ivbとが等しいと判定しても差し支えないときには、相電流Ivaと相電流Ivbとが等しいと判定する。相電流Iwaおよび相電流Iwbについても同様に、その偏差が僅かであり、相電流Iwaと相電流Iwbとが等しいと判定しても差し支えないときには、相電流Iwaと相電流Iwbとが等しいと判定する。メイン電流センサ32va,32waの何れかに異常が生じているときには、相電流Ivaと相電流Ivbとの偏差または相電流Iwaと相電流Iwbとの偏差が値0とはならない生じる。以下、こうした対応する相電流の偏差が値0とはならない異常を「偏差異常」と称することがある。
ステップS120で、相電流Ivaと相電流Ivbとが等しく、且つ、相電流Iwaと相電流Iwbとが等しいときには、メイン電流センサ32va,32waは正常であると判断して、ステップS140へ進む。
ステップS120で、相電流Ivaと相電流Ivbとが等しくなかったり、相電流Iwaと相電流Iwbとが等しくないときには、メイン電流センサ32va,32waの何れかに異常が生じていると判定して(ステップS130)、ステップS140へ進む。以下、メイン電流センサ32va,32waの何れかに異常が生じていることを「AchVW相に異常が生じている」と称することがある。
こうしてメイン電流センサ32va,32waの何れかに異常が生じているか否かを判定すると、続いて、相電流Iuaと相電流Iubとが等しいか否かを判定する(ステップS140)。この判定では、ステップS120の判定と同様に、相電流Iuaと相電流Iubとの差が微差であり、相電流Iuaと相電流Iubとが等しいと判定しても差し支えないときには、相電流Iuaと相電流Iubとが等しいと判定する。
ステップS140で相電流Iuaと相電流Iubとが等しいときには、メイン電流センサ32uaは正常であると判断して、ステップS160へ進む。
ステップS140で相電流Iuaと相電流Iubとが等しくないときには、メイン電流センサ32uaに異常が生じていると判定して(ステップS150)、ステップS160へ進む。以下、メイン電流センサ32uaに異常が生じていることを「AchU相に異常が生じている」と称することがある。
こうしてメイン電流センサ32uaに異常が生じているか否かを判定すると、続いて、相電流Iub,Ivb,Iwbの総和が値0であるか否かを判定する(ステップS160)。この判定では、相電流Iub,Ivb,Iwbの総和の値0とは異なるが値0に近い値であるときも相電流Iub,Ivb,Iwbの総和が値0であると判定する。
ステップS110で相電流Iub,Ivb,Iwbの総和が値0であるときには、サブ電流センサ32ub,32vb,32wbが正常であると判断して、本ルーチンを終了する。
ステップS160で相電流Iub,Ivb,Iwbの総和が値0ではないときには、サブ電流センサ32ub,32vb,32wbの何れかに異常が生じていると判断して、続いて、ステップS120と同様の処理で、相電流Ivaと相電流Ivbとが等しく、且つ、相電流Iwaと相電流Iwbとが等しい、か否かを判定する(ステップS170)。
ステップS170で、相電流Ivaと相電流Ivbとが等しく、且つ、相電流Iwaと相電流Iwbとが等しいときには、サブ電流センサ32vb,32wbは正常であると判断して、ステップS190へ進む。
ステップS120で、相電流Ivaと相電流Ivbとが等しくなかったり、相電流Iwaと相電流Iwbとが等しくないときには、サブ電流センサ32vb,32wbに異常が生じていると判定して(ステップS180)、ステップS190へ進む。以下、サブ電流センサ32vb,32wbの何れかに異常が生じていることを「BchVW相に異常が生じている」と称することがある。
こうしてサブ電流センサ32vb,32wbに異常が生じているか否かを判定すると、続いて、ステップS140と同様の処理で、相電流Iuaと相電流Iubとが等しいか否かを判定する(ステップS190)。
ステップS190で相電流Iuaと相電流Iubとが等しいときには、サブ電流センサ32ubは正常であると判断して、本ルーチンを終了する。
ステップS190で相電流Iuaと相電流Iubとが等しくないときには、サブ電流センサ32ubに異常が生じていると判定して(ステップS200)、本ルーチンを終了する。以下、サブ電流センサ32ubに異常が生じていることを「BchU相に異常が生じている」と称することがある。こうした処理により、メイン電流センサ32va,32wa,サブ電流センサ32vb,32wbの何れかに異常が生じているか否かと、メイン電流センサ32ua,サブ電流センサubに異常が生じているか否かと、を判定することができる。
次に、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbの何れかの異常を検出したときの動作について説明する。図4は、上述の判定ルーチンでの異常の判定結果と、入力切替部51による相電流Iu,Iv,Iwの設定と、走行モードと、の関係の一例を示す説明図である。
判定ルーチンのステップS150,S180,S200においてAchU相,BchVW相,BchU相に異常が生じていると判定されたときには、メイン電流センサ32va,32waからの相電流Iva,Iwaを用いて相電流Iu,Iv,Iwを設定しても差し支えない。そのため、入力切替部51は、相電流Iva,Iwaを用いて相電流Iu,Iv,Iwを設定し、モータ制御部52は、入力切替部51からの各相の相電流Iu,Iv,Iwと、回転位置検出センサ32aからのモータ32の回転子の回転位置θmと、に基づくPWM信号でインバータ34(トランジスタT11~T16)を制御する。これにより、通常走行モードで走行することができる。
判定ルーチンのステップS130でAchVW相が異常であるときには、入力切替部51においてメイン電流センサ32va,32waからの相電流Iva,Iwaを用いて相電流Iu,Iv,Iwを設定し、モータ制御部52において入力切替部51からの各相の相電流Iu,Iv,Iwと、回転位置検出センサ32aからのモータ32の回転子の回転位置θmと、に基づくPWM信号でインバータ34(トランジスタT11~T16)を制御すると、インバータ34(トランジスタT11~T16)を適正に制御できない。そのため、入力切替部51は、サブ電流センサ32vb,32wbからの相電流Ivb,Iwbを用いて相電流Iu,Iv,Iwを設定し、モータ制御部52は、入力切替部51からの各相の相電流Iu,Iv,Iwと、回転位置検出センサ32aからのモータ32の回転子の回転位置θmと、に基づくPWM信号でインバータ34(トランジスタT11~T16)を制御する。このようにサブ電流センサ32vb,32wbからの相電流Ivb,Iwbを用いた制御により退避走行(Bch走行)モードで走行することができる。
なお、AchU相の異常,BchVW相の異常,BchU相の異常,AchVW相の異常のうち複数の異常が生じているときには、車両を停止する。
図5は、メイン電流センサ32vaからの相電流Ivaに異常が生じたときにおける、相電流Iva,Ivb,フラグF1,F2,AchVW相の異常判定結果、BchVW相の異常判定結果、相電流Iv,Iwに設定される相電流(相電流Iv,Iw設定相)の時間変化の一例を示すタイミングチャートである。フラグF1は、相電流Iva,Iwa,Iuaの総和が値0のときに値1となり、この総和が値0ではないときに値0となるフラグである。フラグF2は、相電流Ivaと相電流Ivbとが等しいときには値1となり、相電流Ivaと相電流Ivbとが等しくないときには値0となるフラグである。メイン電流センサ32vaに異常が生じると(時刻t1)、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbによる各相の相電流Iva,Iwa,Iua,Ivb,Iwb,Iubの検出時間の分遅れてフラグF1,F2が値0となる(時刻t2)。その後、上述の判定ルーチンのステップS130の処理でAchVW相が異常であると判定され、相電流Iv、Iw設定相が相電流Iva,Iwaから相電流Ivb,Iwbへ切り替わる(時刻t3)。こうした処理により、メイン電流センサ32va,32waの何れかに異常が生じたときに、車両の走行(モータ32の駆動)を継続させることができる。
以上説明した実施例の電気自動車20によれば、メイン電流センサ32ua,32va,32waからの相電流Iua,Iva,Iwaの総和に基づく総和異常と、相電流Iuaと相電流Iub,相電流Ivaと相電流Ivb,相電流Iwaと相電流Iwbとの偏差に基づく偏差異常と、を用いてメイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbの何れかの異常を検出し、メイン電流センサ32va,32waのうちの一方の異常を検出したときには、インバータ34の制御に用いる相電流Iu,Iv,Iwをメイン電流センサ32va,32waからの相電流Iva,Iwaからサブ電流センサ32vb,32wbからの相電流Ivb,Iwbへ切り替えることにより、車両の走行(モータ32の駆動)を継続させることができる。
実施例の電気自動車20では、入力切替部51は、U相の相電流Iuに値0から相電流Ivaと相電流Iwaとの和を減じた値または値0から相電流Ivbと相電流Iwbとの和を減じた値を設定している。しかしながら、U相の相電流Iuにメイン電流センサ32uaからの相電流Iuaまたはサブ電流センサubからの相電流Iubを設定してもよい。この場合、異常検出部53は、図3に例示した判定ルーチンや図4に例示した入力切替部51による相電流Iu,Iv,Iwや走行モードの設定に代えて、各相毎に、図6に例示する変形例の判定ルーチンを含む制御ルーチンを実行すればよい。図6の変形例の制御ルーチンでは、説明のため、W相のメイン電流センサ32wa,サブ電流センサ32wbに異常があるか否かに基づく制御について例示しているが、同様の制御を、U相のメイン電流センサ32ua,サブ電流センサ32ubに異常が生じているか否かに基づく制御やV相のメイン電流センサ32va,サブ電流センサ32vbに異常が生じているか否かに基づく制御に適用する。
図6の変形例の制御ルーチンは、電子制御ユニット50(入力切替部51,異常検出部53,モータ制御部52)により実行される。最初に、図3の判定ルーチンのステップS100と同様の処理で、メイン電流センサ32ua,32va,32wa,サブ電流センサ32ub,32vb,32wbから各相の相電流Iua,Iva,Iwa,Iub,Ivb,Iwbを入力する(ステップS300)。
続いて、走行モードが退避走行モードであるか否かを判定する(ステップS310)。退避走行モードとしては、上述したBch走行モードのほかに、Ach走行モードやその他の何らかの異常が生じたことによる通常走行モードと異なる走行モードなどを挙げることができる。Ach走行モードについては、後述する。
ステップS310で走行モードが退避走行モードではないと判定されたときには、図3の判定ルーチンのステップS140と同様の処理で、相電流Iwaと相電流Iwbとが等しいか否かを判定する(ステップS320)。相電流Iwaと相電流Iwbとが等しいときには、メイン電流センサ32waに異常が生じていないと判断して、通常走行モードで走行するようにインバータ34を制御して(ステップS330)、ステップS300の処理へ戻る。この場合、通常走行モードでは、相電流Iua,Iva,Iwaを相電流Iu,Iv,Iwに設定し、設定した相電流Iu,Iv,Iwを用いてトルク指令Tm*でモータ32を駆動して走行する。
ステップS320で相電流Iwaと相電流Iwbとが等しくないときには、メイン電流センサ32wa,サブ電流センサ32wbの何れかに異常が生じていると判断して、続いて、図3の判定ルーチンのステップS110と同様の処理で、相電流Iua,Iva,Iwaの総和が値0であるか否かを判定する(ステップS340)。相電流Iua,Iva,Iwaの総和が値0であるときには、サブ電流センサ32wbに異常が生じていて相電流Iwbが異常値であると判定して(ステップS350)、退避走行モード(Ach走行モード)により走行するようにインバータ34を制御して(ステップS360)、本ルーチンを終了する。退避走行モード(Ach走行モード)では、相電流Iua,Iva,Iwaを相電流Iu,Iv,Iwに設定し、設定した相電流Iu,Iv,Iwを用いてトルク指令Tm*でモータ32を駆動して走行する。したがって、実施例では、退避走行モード(Ach走行モード)は、通常走行モードと同一の走行モードとなる。
ステップS340で相電流Iua,Iva,Iwaの総和が値0でないときには、メイン電流センサ32waに異常が生じていて相電流Iwaが異常値であると判定して(ステップS370)、退避走行モード(Bch走行モード)により走行するようにインバータ34を制御して(ステップS380)、本ルーチンを終了する。こうした制御により、通常走行モードにおいてインバータ34の制御のために用いるメイン電流センサ32waに異常が生じているときには、車両の走行を継続させることができる。
ステップS310で退避走行モードであると判定したときには、その退避走行モードが相電流Iwbが異常値であることによる退避走行モード(Ach走行モード)であるか否かを判定すると共に(ステップS390)、その退避走行モードが相電流Iwaが異常値であることによる退避走行モード(Bch走行モード)であるか否かを判定する(ステップS400)。
ステップS390,ステップS400でその退避走行モードが退避走行(Ach走行モード)でも退避走行モード(Bch走行モード)でもないときには、Ach走行モード,Bch走行モードとは異なる退避走行モード中であると判断して、その退避走行モードによる走行を継続して(ステップS410)、本ルーチンを終了する。こうした処理により、退避走行モードによる走行を継続することができる。
ステップS390,ステップS400でその退避走行モードが退避走行モード(Ach走行モード)ではないが退避走行モード(Bch走行モード)であるとき、すなわち、サブ電流センサ32wbが正常でメイン電流センサ32waに異常が生じているときには、相電流Iub,Ivb,Iwbの総和が値0であるか否かを判定する(ステップS420)。相電流Iub,Ivb,Iwbの総和が値0であるときには、サブ電流センサ32ub,32vb,32wbが正常であると判断して、退避走行モード(Bch走行モード)による走行を継続して(ステップS430)、本ルーチンを終了する。こうした処理により、退避走行モード(Bch走行モード)による走行を継続することができる。
ステップS420で相電流Iub,Ivb,Iwbの総和が値0ではないときには、サブ電流センサ32wbが正常であるがサブ電流センサ32ub,32vbの何れかに異常が生じていると判断して、車両を停止し(ステップS440)、本ルーチンを終了する。メイン電流センサ32waに異常が生じており、且つ、サブ電流センサ32ub,32vbの何れかに異常が生じているときには、インバータ34を適正に制御できないことから、こうした場合に車両を停止させることができる。
ステップS390で退避走行モードが相電流Iwbが異常値であることによる退避走行(Ach走行)であるとき、すなわち、メイン電流センサ32waが正常でサブ電流センサ32wbに異常が生じているときには、相電流Iua,Iva,Iwaの総和が値0であるか否かを判定する(ステップS450)。相電流Iua,Iva,Iwaの総和が値0であるときには、メイン電流センサ32ua,32va,32waが正常であると判断して、退避走行モード(Ach走行モード)による走行を継続して(ステップS460)、本ルーチンを終了する。こうした処理により、退避走行モード(Ach走行モード)による走行を継続することができる。
ステップS450で相電流Iua,Iva,Iwaの総和が値0ではないときには、メイン電流センサ32waが正常であるがメイン電流センサ32ua,32vaの何れかに異常が生じていると判断して、車両を停止し(ステップS470)、本ルーチンを終了する。サブ電流センサ32wbに異常が生じており、且つ、メイン電流センサ32ua,32vaの何れかに異常が生じているときには、インバータ34を適正に制御できないことから、こうした場合に車両を停止させることができる。
こうした制御により、メイン電流センサ32ua,32va,32waの少なくとも1つやサブ電流センサ32ub,32vb,32wbの少なくとも1つに異常が生じている場合以外には、モータ32を駆動して車両の走行を継続させることができる。
実施例の電気自動車20に搭載される駆動装置では、蓄電装置として、バッテリ36を用いるものとしたが、バッテリ36に代えて、キャパシタを用いるものとしてもよい。
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、モータ32が「モータ」に相当し、インバータ34が「インバータ」に相当し、メイン電流センサ32ua,32va,32waが「第1電流センサ」に相当し、サブ電流センサ32ub,32vb,32wbが「第2電流センサ」に相当し、電子制御ユニット50が「制御装置」に相当する。
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。