以下、実施形態である電池システムについて図面を参照して説明する。図1は、電池システムを組み込んだハイブリッド駆動システム10の概略構成を示す図である。このハイブリッド駆動システム10は、動力源として、二つの回転電機MG1,MG2と一つのエンジン12が設けられている。ハイブリッド駆動システム10には、回転電機MG1,MG2に電力を供給、あるいは、回転電機MG1,MG2で発電された電力を蓄電するメインバッテリ20が設けられている。
メインバッテリ20は、直列に接続された複数の単電池を有する。単電池としては、ニッケル水素電池やリチウムイオン電池といった二次電池を用いることができる。また、二次電池の代わりに、電気二重層キャパシタを用いることもできる。メインバッテリ20には、並列に接続された複数の単電池が含まれてもよい。メインバッテリの電圧値Vb、電流値Ib、温度Tbは、それぞれ、電圧センサ22、電流センサ23、温度センサ24で検知され、制御部26に入力される。
なお、後に詳説するように、本実施形態では、電池システムの異常検知のために、電流センサ23で検出された電流値と、理論上の電流値と、を用いる。以下では、電流センサ23で検出された電流値を「電流検出値Ib」、理論上の電流値を「電流推定値Ies」と呼び、区別する。電流推定値Iesは、第一回転電機MG1のパワーと、第二回転電機MG2のパワーと、各種システム損失と、を加算した総パワーPallを、電池電圧Vbで除算することで得られる。すなわち、電流推定値Ies=Pall/Vbである。また、以下の説明では、電流検出値Ibおよび電流推定値Iesにおいて、放電側の電流値は、正の値、充電側の電流値は、負の値としている。
メインバッテリ20は、システムメインリレー44を介してインバータ18に接続されている。車両のイグニッションスイッチがオフからオンに切り替わったとき、制御部26は、これらシステムメインリレー44をオフからオンに切り替えることにより、メインバッテリ20とインバータ18とを電気的に接続する。逆に、車両のイグニッションスイッチがオンからオフに切り替わったとき、制御部26は、これらシステムメインリレー44をオンからオフに切り替えることにより、メインバッテリ20とインバータ18とを電気的に切断する。
インバータ18は、メインバッテリ20から供給された直流電力を交流電力に変換し、第二回転電機MG2に出力する。第二回転電機MG2は、インバータ18から出力された交流電力を受けて、車両を走行させるための運動エネルギを生成する。第二回転電機MG2が生成した運動エネルギが、駆動輪16に伝達されることで、車両が走行する。また、第二回転電機MG2は、車両の制動時に生じる運動エネルギを電気エネルギに変換する。インバータ18は、第二回転電機MG2が生成した交流電力(回生電力)を直流電力に変換し、メインバッテリ20に供給する。これにより、メインバッテリ20が充電される。
動力分割機構14は、エンジン12の動力を駆動輪16に伝達したり、第一回転電機MG1に伝達したりする。第一回転電機MG1は、エンジン12の動力を受けて発電する。第一回転電機MG1が発電した電力は、インバータ18を介して第二回転電機MG2に供給されたり、メインバッテリ20に供給されたりする。メインバッテリ20に電力が供給されることで、メインバッテリ20が充電される。
なお、メインバッテリ20およびインバータ18の間の電流経路には、昇圧回路(図示せず)も設けられている。昇圧回路は、メインバッテリ20の出力電圧を昇圧し、昇圧後の電力をインバータ18に出力する。また、昇圧回路は、インバータ18の出力電圧を降圧し、降圧後の電力をメインバッテリ20に出力する。
ハイブリッド駆動システム10には、さらに、補機バッテリ28も設けられている。補機バッテリ28は、車両に搭載された補機、例えば、空調機器や、ライト等に電力を供給する。この補機バッテリ28は、メインバッテリ20に接続されており、補機バッテリ28の充電状態が低下すると、メインバッテリ20からの電力で充電される。
メインバッテリ20には、さらに、充電器38も接続されている。メインバッテリ20と充電器38との間には、充電リレー42が設けられている。充電リレー42は、制御部26からの制御信号を受けて、オンおよびオフの間で切り替わる。充電器38には、コネクタ40(いわゆるインレット)が接続されている。このコネクタ40は、外部電源(例えば、商用電源)のコネクタ(いわゆる充電プラグ)に接続することができる。コネクタ40が外部電源に接続され、充電リレー42がオンされることで、メインバッテリ20が外部電力により充電される。
制御部26は、メインバッテリ20の充放電を制御する。この制御部26は、各種演算を行うCPU50と、各種データやプログラムを記憶する記憶部52と、を備えている。なお、図1では、制御部26を一つのブロックで図示しているが、制御部26は、複数の装置(複数のCPU、複数の記憶部52)で構成されてもよい。また、制御部26の一部の機能は、車両の外部に設けられ、車両内に設けられた制御部26と無線で通信できる外部装置で実現されてもよい。電池システムは、この制御部26、メインバッテリ20、各種センサ22,23,24、および、タイマ54で構成される。
制御部26は、電池温度Tbや電池電圧Vb、電流検出値Ib等に基づいて、メインバッテリの充電状態(SOC:State Of Charge)Cbを算出する。充電状態Cbは、満充電に対する現在の充電率を示す値である。制御部26は、この充電状態Cbが、予め規定された下限値を下回らず、かつ、上限値を上回らないように、メインバッテリ20の充放電量を制御する。また、制御部26は、充電電力許容値Winおよび放電電力許容値Woutを設定し、充放電電力が、当該充放電電力許容値Win,Woutを超えないように、充放電を制御している。なお、本実施形態において、充電電力許容値Winは、負の値であり、放電電力許容値Woutは、正の値である。
さらに、制御部26は、充放電電力許容値Win,Woutや、電流検出値Ib等に基づいて、電池システムの異常の有無も判定している。この異常の有無判定のために、電池システムには、タイマ54も設けられている。タイマ54は、後に詳説するように、充電電力許容値Winがゼロ、または、放電電力許容値Woutがゼロである許容値ゼロ状態の継続時間を判定用継続時間tdとしてカウントする。このタイマ54でカウントされた判定用継続時間tdは、制御部26へと送られる。また、制御部26は、この判定用継続時間tdの他に、電流検出値Ibや、電池電圧Vb等を参照して、電流センサ23の異常の有無を判定する。以下、この電流センサ23の異常有無判定について詳説する。
はじめに、制御部26の構成について説明する。図2は、制御部26の機能ブロック図である。なお、図2では、電池システムの異常の有無判定に特に関係の高い機能のみを図示しているが、制御部26は、実際には、より多数の機能を有している。
制御部26は、既述した通り、各種演算を行うCPU50と、各種データ等を記憶する記憶部52と、を備えている。この制御部26は、機能的には、Win/Wout設定部60、検出値判定部62、異常比率算出部64、電流積算部66、異常判定部68、および、記憶部52を有している。
Win/Wout設定部60は、充電電力許容値Winおよび放電電力許容値Woutを設定する。具体的には、Win/Wout設定部60には、電池電圧Vbや、電池温度Tb、電流検出値Ib等が入力される。Win/Wout設定部60は、基本的には、電池温度Tbに基づいて、充放電電力許容値Win,Woutを設定する。ただし、メインバッテリ20の充電状態Cbが、基準範囲内から外れた場合には、電池温度Tbに関わらず、充放電電力許容値Win,Woutをゼロに設定する。具体的には、Win/Wout設定部60は、充電状態Cbが、充電状態下限値Cl以下の場合には、電池温度Tbに関わらず、放電電力許容値Woutをゼロに設定し、更なる放電を禁止する。これにより、メインバッテリ20の過放電が防止される。また、Win/Wout設定部60は、充電状態Cbが、充電状態上限値Cu以上の場合には、電池温度Tbに関わらず、充電電力許容値Winをゼロに設定し、更なる充電を禁止する。これにより、メインバッテリ20の過充電が防止される。なお、メインバッテリ20の充電状態Cbは、電池電圧Vbおよび電流検出値Ibに基づいて算出される。
Win/Wout設定部60は、Win=0またはWout=0となれば、タイマ54に判定用継続時間tdのカウントを指示する。タイマ54は、充電電力許容値Winがゼロの継続時間、または、放電電力許容値Woutがゼロの継続時間を判定用継続時間tdとして、カウントする。カウントされた判定用継続時間tdは、異常比率算出部64に入力される。なお、Win/Wout設定部60は、Win≠0またはWout≠0となれば、タイマ54に対して、それまでカウントしていた判定用継続時間tdの初期化、すなわち、td=0とすることを指示する。
また、Win/Wout設定部60は、Win=0またはWout=0となれば、検出値判定部62に検出値異常発生数Nabのカウントを指示する。検出値異常発生数Nabは、充電電力許容値Win、または、放電電力許容値Woutがゼロとなる許容値ゼロ状態の期間中に、電流検出値Ibが異常と判定された回数である。この指示を受ければ、検出値判定部62は、電流検出値Ibの異常の有無を判定し、異常と判定した場合には、検出値異常発生数Nabをカウントする。
より具体的に説明すると、検出値判定部62は、許容値ゼロ状態となれば、ハイブリッド駆動システム10の駆動状況等に基づいて、メインバッテリ20の電流の理論値、すなわち、電流推定値Iesを算出する。この電流推定値Iesは、例えば、第一回転電機MG1のパワーと、第二回転電機MG2のパワーと、各種システム損失と、を加算した総パワーPallを、電池電圧Vbで除算することで得られる。
検出値判定部62は、電流推定値Iesが算出できれば、当該電流推定値Iesと電流検出値Ibとを比較し、両者の差分値が、許容範囲内であれば、すなわち、Ies≒Ibであれば、電流検出値Ibは、正常であると判断する。一方、電流推定値Iesと電流検出値Ibの差分値が、許容範囲を超えて大きい場合、すなわち、Ies≠Ibであれば、電流検出値Ibが異常であると判断する。この場合、検出値判定部62は、検出値異常発生数Nabをインクリメントする。また、検出値判定部62は、充電電力許容値Win、または、放電電力許容値Woutが、ゼロでなくなれば、それまでカウントしていた検出値異常発生数Nabを初期化、すなわち、Nab=0とする。
異常比率算出部64は、許容値ゼロ状態の期間中における検出値異常の発生頻度を示す異常比率Rabを算出する。具体的には、異常比率算出部64は、検出値判定部62で算出された検出値異常発生数Nabを、タイマ54でカウントされた判定用継続時間tdで除算した値を、異常比率Rabとして算出する(Rab=Nab/td)。算出された異常比率Rabは、異常判定部68に出力される。
また、Win/Wout設定部60は、Win=0またはWout=0となれば、電流積算部66に電流検出値Ibの積算も指示する。この指示を受ければ、電流積算部66は、充電電力許容値Win、または、放電電力許容値Woutがゼロとなる許容値ゼロ状態の期間中における電流検出値Ibの積算値Ahを算出する。算出された電流積算値Ahは、異常判定部68に出力される。なお、電流積算部66は、充電電力許容値Win、または、放電電力許容値Woutが、ゼロでなくなれば、それまで積算していた電流積算値Ahを初期化、すなわち、Ah=0とする。
異常判定部68は、メインバッテリ20の動作条件(Win,Wout)と電流積算値Ahとの関係、および、異常比率Rabに基づいて電池システムの異常の有無を判定する。具体的に、説明すると、異常判定部68は、Wout=0のときに、電流積算値Ahが正の方向(放電の方向)に増加して、規定の放電側閾値Aoutに達した場合(すなわちAh≧Aoutの場合)、または、Win=0のときに、電流積算値Ahが負の方向(充電の方向)に増加して、規定の充電側閾値Ainに達した場合(すなわちAh≦Ainの場合)、何らかの異常が発生していると判断する。
すなわち、Wout=0の場合、本来、放電電流(正の値)は、ゼロになるため、電流積算値Ahが、正の方向に増えるはずがない。それにもかかわらず、Wout=0の状況で、電流積算値Ahが、正の方向に増えて放電側閾値Aoutに達した場合、メインバッテリ20の動作条件(Wout)と電流検出値Ibとの関係に矛盾が生じており、何らかの異常が発生していると判断できる。また、Win=0の場合、本来、充電電流(負の値)は、ゼロになるため、電流積算値Ahが、負の方向に増える(電流積算値Ahが減少する)はずがない。それにもかかわらず、Win=0の状況で、電流積算値Ahが、負の方向に増えて(電流積算値Ahが減少して)、充電側閾値Ainに達した場合、メインバッテリ20の動作条件(Win)と電流検出値Ibとの関係に矛盾が生じており、何らかの異常が発生していると判断できる。
ここで、メインバッテリ20の動作条件(Wout,Win)と、電流検出値Ib(ひいては電流積算値Ah)との関係に矛盾が生じる原因としては、電流センサ23の異常の他に、車両がNレンジを選択したまま放置されたNレンジ放置と、制御部26の異常と、がある。すなわち、Nレンジが選択されると、エンジン12と動力分割機構14との機械的連結が解除されるため、第一回転電機MG1による発電が行われない。一方で、放電電力許容値Woutをゼロにしても、補機30の駆動等に起因して、徐々に電力が消費される。その結果、Nレンジが選択された状態で放置されると、Wout=0でも、放電電力が増加するという矛盾が発生し得る。また、各種演算を行う制御部26に何らかの異常が生じている場合にも、メインバッテリ20の動作条件(Wout,Win)と電流検出値Ib(ひいては電流積算値Ah)との関係に矛盾が生じる。つまり、メインバッテリ20の動作条件と電流検出値Ibとの関係だけでは、その矛盾の原因を特定できない。そして、原因が特定できない場合、適切な対応をとることができない。
そこで、異常判定部68は、動作条件と電流検出値Ibとの矛盾が生じた場合、すなわち、Wout=0でAh≧AoutまたはWin=0でAh≦Ainとなれば、異常比率算出部64で算出された異常比率Rabと、記憶部52に予め記憶されている基準比率Rdefとを比較する。比較の結果、Rab≧Rdefの場合、電流検出値Ibと電流推定値Iesとの間に矛盾が多々生じており、電流センサ23が故障している可能性が高い。したがって、この場合、動作条件と電流検出値Ibとの矛盾が生じる原因は、電流センサ23の異常と判定できる。この場合、制御部26は、電流センサ23の異常を示すアラームを出力する。
一方、Rab<Rdefの場合、電流検出値Ibと電流推定値Iesとの間に矛盾はなく、電流センサ23は正常である可能性が高い。この場合、異常判定部68は、動作条件と電流検出値Ibとの矛盾が生じる原因は、電流センサ23以外にあると判断する。具体的には、Wout=0でAh≧Aoutでありながら、異常比率Rabが、基準比率Rdefより小さい(Rab<Rdef)の場合、異常判定部68は、電流センサ23は正常であるが、Nレンジ放置が生じていると判断する。この場合、制御部26は、ユーザに対してNレンジからの切り替えを促すメッセージを通知したうえで、ハイブリッド駆動システム10をオフ、すなわち、システムメインリレー44をオフする。
また、Win=0でAh≦Ainでありながら、異常比率Rabが、基準比率Rdefより小さい(Rab<Rdef)の場合、異常判定部68は、電流センサ23は正常であるが、制御部26に異常が生じていると判断する。この場合、制御部26は、制御部26の異常を示すアラームを出力する。記憶部52には、こうした電流センサ23の異常判定に用いるプログラムの他、基準比率Rdefや、充電側閾値Ain、放電側閾値Aout等の値が記憶されている。
次に、本実施形態における電流センサ23の異常判定の流れについて図3、図4を参照して説明する。図3は、放電電力許容値Woutがゼロの場合の、図4は、充電電力許容値Winがゼロの場合の、判定の流れを示している。
図3に示す通り、メインバッテリ20の充電状態Cbが、規定の充電状態下限値Cl以下となれば(S10でYes)、Win/Wout設定部60は、放電電力許容値Woutをゼロに設定する(S12)。この場合、タイマ54は、判定用継続時間tdをカウントアップする(S14)。また、電流積算部66は、電流検出値Ibを積算していく。すなわち、電流検出値Ibは、現在の電流積算値Ahに電流検出値Ibを加算した値を、新たな電流積算値Ahとして一時記憶する(S16)。
検出値判定部62は、電流検出値Ibが正常か否かを判定する(S18)。具体的には、検出値判定部62は、電流検出値Ibと電流推定値Iesとの差分が、規定の許容範囲内であれば、検出値正常と判定し、差分が許容範囲内を超えている場合には、検出値異常と判定する。
検出値異常と判定された場合(S18でNo)、検出値判定部62は、検出値異常発生数Nabをカウントアップ、すなわち、Nab=Nab+1とする。一方、検出値正常と判定された場合(S18でYes)には、検出値異常発生数Nabをカウントアップすることなく、ステップS21に進む。ステップS21において、異常比率算出部64は、検出値異常発生数Nabを、判定用継続時間tdで除算した異常比率Rabを算出する。
続いて、異常判定部68は、電流積算値Ahと、放電側閾値Aoutと、を比較する。比較の結果、電流積算値Ahが、放電側閾値Aoutより低い場合(S22でNo)には、ステップS10へと戻る。一方、電流積算値Ahが放電側閾値Aout以上、すなわち、電流積算値Ahが、放電側に増えて放電側閾値Aoutに達した場合(S22でYes)には、何らかの異常が生じていると判断する。
この場合、異常判定部68は、異常の原因を特定するために、異常比率Rabを、基準比率Rdefと比較する。比較の結果、異常比率Rabが、基準比率Rdef以上(S24でYes)の場合、異常判定部68は、電流センサ23の異常が発生していると判定する(S28)。一方、異常比率Rabが、基準比率Rdef未満(S24でNo)の場合、異常判定部68は、Nレンジ放置が発生していると判定する(S26)。この場合、制御部26は、ハイブリッド駆動システム10をオフする。そして、電流センサ23の異常またはNレンジ放置と判定されれば、異常判定の処理は、終了となる。
一方、異常と判定する前に、メインバッテリ20の充電状態Cbが、充電状態下限値Clよりも大きくなった場合(S10でNo)、制御部26は、判定用継続時間td、検出値異常発生数Nab、電流積算値Ahを初期化、すなわち、td=0、Nab=0、Ah=0とする。また、Win/Wout設定部60は、電池温度Tb等に基づいて、放電電力許容値Woutを設定する(S29)。
次に、充電電力許容値Winがゼロの場合の判定の流れを図4を参照して説明する。充電電力許容値Winがゼロの場合も、Wout=0の場合(図3の場合)と概ね同じである。すなわち、メインバッテリ20の充電状態Cbが、規定の充電状態上限値Cu以上となれば(S30でYes)、Win/Wout設定部60は、充電電力許容値Winをゼロに設定する(S32)。Win=0となれば、タイマ54は、判定用継続時間tdをカウントアップする(S34)。また、電流積算部66は、電流検出値Ibを積算し、電流積算値Ahを算出する(S36)。
検出値判定部62は、電流検出値Ibと電流推定値Iesとを比較し、電流検出値Ibが正常か否かを判定する(S38)。検出値異常と判定された場合(S38でNo)、検出値判定部62は、検出値異常発生数Nabをカウントアップする(S40)。一方、検出値正常と判定された場合(S38でYes)には、検出値異常発生数Nabをカウントアップすることなく、ステップS41に進む。ステップS41において、異常比率算出部64は、異常比率Rab=Nab/tdを算出する。
続いて、異常判定部68は、電流積算値Ahと、充電側閾値Ainと、を比較する。比較の結果、電流積算値Ahが、充電側閾値Ainより高い場合(S42でNo)には、ステップS20へと戻る。一方、電流積算値Ahが充電側閾値Ain以下、すなわち、電流積算値Ahが、充電側に増えて充電側閾値Ainに達した場合(S42でYes)には、何らかの異常が生じていると判断する。
この場合、異常判定部68は、異常の原因を特定するために、異常比率Rabを、基準比率Rdefと比較する。比較の結果、異常比率Rabが、基準比率Rdef以上(S44でYes)の場合、異常判定部68は、電流センサ23の異常が発生していると判定する(S48)。一方、異常比率Rabが、基準比率Rdef未満(S44でNo)の場合、異常判定部68は、制御部26の異常が発生していると判定する。そして、電流センサ23の異常または制御部26の異常と判定されれば、異常判定の処理は、終了となる。
一方、異常と判定する前に、メインバッテリ20の充電状態Cbが、充電状態上限値Cuよりも大きくなった場合(S30でNo)、制御部26は、判定用継続時間td、検出値異常発生数Nab、電流積算値Ahを初期化する。また、Win/Wout設定部60は、電池温度Tb等に基づいて、放電電力許容値Woutを設定する(S49)。
次に、図5、図6を参照して、電流システムの異常の有無判定の一例を説明する。図5、図6は、電流システムの異常の有無判定の一例を説明するための図である。図5の例では、時刻t0において、放電電力許容値Woutは、0より大きく、放電が許容されている。Wout>0の場合、電流積算値Ah、判定用継続時間td、検出値異常発生数Nabは、いずれもゼロで一定となる。その後、時刻t1において、放電電力許容値Woutがゼロになったとする。
Wout=0となれば、判定用継続時間tdのカウント、および、検出値異常発生数Nabのカウントが開始される。判定用継続時間tdは、時間の増加とともに、徐々に増加する。一方、検出値異常発生数Nabは、検出値異常(すなわちIab≠Ies)が発生したときにのみ増加する。異常比率Rabは、検出値異常発生数Nabがカウントアップした直後には、急激に増加するが、その後、検出値異常が発生しなければ、時間の経過とともに、徐々に低下する。
なお、異常比率Rabの算出開始直後(時刻t1直後)は、検出値異常発生数Nabに対する異常比率Rabの感度が高いため、異常比率Rabが大きく変動しやすい。そして、その結果、図5に示すように、異常比率Rabが、一時的に、基準比率Rdefを超える場合がある。しかし、上述した通り、本実施形態では、電流積算値Ahが、放電側閾値Aoutを超えない限り、異常と判定しないため、検出開始直後におけるRab≧Rdefは、無視される。
また、Wout=0となれば、電流検出値Ibの積算も開始される。ここで、Wout=0の場合、本来であれば、放電電流(正の値)が制限されるため、電流積算値Ahは、減少する(充電する)ものの、増加することはない。したがって、正常状態であれば、電流積算値Ahは、図5における二点鎖線のように、徐々に低下する。しかし、図5の例では、何らかの異常に起因して、電流積算値Ahが、徐々に増加している。
そして、時刻t2において、電流積算値Ahが、放電側閾値Aoutに達したとする。この場合、制御部26は、電池システムに何らかの異常が生じていると判断する。そして、その異常の原因を特定するために、制御部26は、異常比率Rabと、基準比率Rdefと、を比較する。図5の例では、異常比率Rabは、基準比率Rdefよりも小さい。したがって、この場合、制御部26は、電流センサ23は正常であるものの、放電が継続する問題、すなわち、Nレンジ放置が発生していると判断する。
次に、図6を参照して、充電側の動きについて説明する。図6の例では、時刻t0において、充電電力許容値Winは、0より小さく、充電が許容されている。Win<0の場合、電流積算値Ah、判定用継続時間td、検出値異常発生数Nabは、いずれもゼロで一定となる。その後、時刻t1において、充電電力許容値Winがゼロになったとする。
Win=0となれば、判定用継続時間tdのカウント、および、検出値異常発生数Nabのカウントが開始される。図6の例では、図5の例に比べて、検出値異常が高頻度で発生している。そのため、異常比率Rabも、図5の例に比べて、比較的、高い値になっている。
また、Win=0となれば、電流検出値Ibの積算も開始される。ここで、Win=0の場合、本来であれば、充電電流(負の値)が制限されるため、電流積算値Ahは、増加する(放電する)ものの、減少することはない。したがって、正常状態であれば、電流積算値Ahは、図6における二点鎖線のように、徐々に増加する。しかし、図6の例では、何らかの異常に起因して、電流積算値Ahが、徐々に減少している。
そして、時刻t2において、電流積算値Ahが、充電側閾値Ainに達したとする。この場合、制御部26は、電池システムに何らかの異常が生じていると判断し、異常比率Rabと、基準比率Rdefと、を比較する。図6の例では、異常比率Rabは、基準比率Rdefよりも大きい。したがって、この場合、制御部26は、電流センサ23に異常が生じていると判断する。
以上の説明から明らかな通り、本実施形態では、電流積算値Ah、および、異常比率Rabの二つの数値に基づいて、異常の有無とその原因を特定している。ここで、既述した通り、電流積算値Ahが、放電側閾値Aoutまたは充電側閾値Ainに達した場合、メインバッテリ20の動作条件と電流検出値Ibとの間に矛盾が生じていると考えられる。また、異常比率Rabが高いということは、電流検出値Ibと、電流値の理論値である電流推定値Iesとの間に矛盾が繰り返し生じていると考えられる。つまり、本実施形態では、メインバッテリ20の動作条件と電流検出値Ibとの関係、および、電流検出値Ibと電流推定値Iesとの関係の双方を考慮して、異常の有無とその原因を特定していると言える。
このように、メインバッテリ20の動作条件と電流検出値Ibとの関係、および、電流検出値Ibと電流推定値Iesとの関係の双方を考慮することで、いずれか一方のみを考慮する場合に比して、電流センサ23の異常をより正確に検出することができ、また、電流センサ23以外の異常も検出できる。
例えば、電流積算値Ahと動作条件との関係のみに基づいて、すなわち、電流積算値Ahのみを参照して異常の有無を判定する場合を考える。この場合、電池システムに何らかの異常が発生していることは判定できるが、その異常の原因は区別できない。
また、例えば、電流検出値Ibと電流推定値Iesとの関係のみに基づいて、すなわち、異常比率Rabのみを参照して異常の有無を判定する場合を考える。この場合、電流センサ23の異常の有無は、判定することができるが、その他の問題、すなわち、Nレンジ放置や制御部26の異常は、検出することができない。
異常比率Rabだけを参照し、電流積算値Ahを参照しない場合、誤検出が増加しやすくなる。ここで、誤検出としては、電流センサ23が異常であるにもかかわらず、異常と検出しない検出スルーと、電流センサ23が正常であるにもかかわらず、異常と検出する過剰検出と、がある。検出スルーを防止するためには、基準比率Rdefを低くすればいいが、この場合、過剰検出が生じやすくなる。特に、図5に示すように、異常比率Rabの算出開始直後(時刻t1直後)は、検出値異常発生数Nabが僅かに上昇するだけで、異常比率Rabが大きく上昇してしまうため、過剰検出が生じやすくなる。一方、過剰検出を防止するために、基準比率Rdefを高くすると、今度は、電流センサ23が異常であるにもかかわらず、正常と判定される検出スルーが生じやすくなる。
本実施形態では、電流積算値Ahが、放電側閾値Aoutまたは充電側閾値Ainに達するまでは、異常比率Rabが、基準比率Rdefに達しても、センサ異常と判定しない。その結果、異常比率Rabの算出開始直後における過剰検出の発生を効果的に防止できる。また、その分、基準比率Rdefを比較的、低めの値に設定できるため、検出スルーも効果的に防止できる。つまり、異常比率Rabと電流積算値Ahの双方を参照することで、異常比率Rabのみを参照する場合に比して、誤検出を効果的に低減できる。つまり、本実施形態によれば、電流センサ23の異常判定をより正確に行うことができる。また、本実施形態によれば、電流センサ23の異常だけでなく、他の原因による異常も検出できる。
なお、これまで説明した構成は、一例であるため、Wout=0の期間中にAh≧WoutかつRab≧Rdefとなる、または、Win=0の期間中にAh≦WinかつRab≧Rdefとなるときに、電流センサ23が異常であると判定するのであれば、その他の構成は、適宜、変更されてもよい。例えば、本実施形態では、Wout=0またはWin=0の期間中、異常比率Rabを随時算出しているが、異常比率Rabは、電流積算値Ahが、閾値Aout,Ainに達したときにのみ算出するようにしてもよい。また、本実施形態では、電流積算値Ahが、閾値Aout,Ainに達した時点で、異常比率Rabと基準比率Rdefとの比較を行っている。しかし、まず、最初に、異常比率Rabと基準比率Rdefの比較を行い、Rab≧Rdeとなった時点で、電流積算値Ahと閾値Aout,Ainの比較を行ってもよい。また、本実施形態では、ハイブリッド駆動システムに搭載された電池システムを例に挙げて説明したが、本願の技術は、電気自動車に適用されてもよい。