本発明の実施例1における電池システムについて、図1を用いて説明する。図1は、本実施例における電池システムの構成を示す概略図である。
図1に示す電池システムは、車両に搭載される。この車両としては、ハイブリッド自動車や電気自動車がある。ハイブリッド自動車は、車両を走行させるための動力源として、後述する組電池の他に、燃料電池やエンジン等を備えた車両である。電気自動車は、車両の動力源として組電池だけを備えた車両である。
組電池10の正極端子には、正極ラインPLが接続されており、正極ラインPLには、システムメインリレーSMR1が設けられている。また、組電池10の負極端子には、負極ラインNLが接続されており、負極ラインNLには、システムメインリレーSMR2が設けられている。システムメインリレーSMR1,SMR2は、コントローラ30からの制御信号を受けることにより、オンおよびオフの間で切り替わる。コントローラ30は、システムメインリレーSMR1,SMR2をオフからオンに切り替えることにより、組電池10を負荷(後述する昇圧回路22)と接続することができる。
電流センサ21は、組電池10に流れる電流値を検出し、検出結果をコントローラ30に出力する。本実施例では、組電池10を放電したときの電流値として、正の値を用い、組電池10を充電したときの電流値として、負の値を用いている。本実施例では、電流センサ21を負極ラインNLに設けているが、これに限るものではない。電流センサ21は、組電池10に流れる電流値を検出できればよい。例えば、正極ラインPLおよび負極ラインNLの少なくとも一方に電流センサ21を設けることができる。また、正極ラインPLおよび負極ラインNLの少なくとも一方に対して、複数の電流センサ21を設けることもできる。
組電池10は、正極ラインPLおよび負極ラインNLを介して、昇圧回路22に接続されている。昇圧回路22は、組電池10の出力電圧を昇圧し、昇圧後の電力をインバータ23に出力する。インバータ23は、昇圧回路22から出力された直流電力を交流電力に変換し、交流電力をモータ・ジェネレータ24に出力する。モータ・ジェネレータ24は、インバータ23からの交流電力を受けることにより、車両を走行させるための運動エネルギを生成する。モータ・ジェネレータ24によって生成された運動エネルギを、車輪に伝達することにより、車両を走行させることができる。
車両を減速させるときや、車両を停止させるとき、モータ・ジェネレータ24は、車両の制動時に発生する運動エネルギを電気エネルギ(交流電力)に変換する。ここで、車両が下り坂を走行するときにも、モータ・ジェネレータ24は、制動力を発生させるために、運動エネルギを電気エネルギに変換する。モータ・ジェネレータ24が生成した交流電力は、インバータ23によって直流電力に変換される。また、昇圧回路22は、インバータ23の出力電圧を降圧し、降圧後の電力を組電池10に供給する。これにより、回生電力を組電池10に蓄えることができる。
コントローラ30は、メモリ31を有しており、メモリ31は、コントローラ30が特定の処理(特に、本実施例で説明する処理)を行うときに用いられる情報を記憶している。本実施例では、メモリ31がコントローラ30に内蔵されているが、コントローラ30の外部にメモリ31を設けることもできる。
コントローラ30には、車両のイグニッションスイッチのオン/オフに関する情報が入力される。イグニッションスイッチがオフからオンに切り替わると、コントローラ30は、システムメインリレーSMR1,SMR2をオフからオンに切り替えることにより、組電池10を昇圧回路22と接続する。これにより、図1に示す電池システムは、起動状態(Ready−On)となる。
一方、イグニッションスイッチがオンからオフに切り替わると、コントローラ30は、システムメインリレーSMR1,SMR2をオンからオフに切り替えることにより、組電池10および昇圧回路22の接続を遮断する。これにより、図1に示す電池システムは、停止状態(Ready−Off)となる。
監視ユニット40は、組電池10の電圧値を検出したり、組電池10に含まれる単電池の電圧値を検出したりして、検出結果をコントローラ30に出力する。図2には、組電池10および監視ユニット40の構成を示している。
図2に示すように、組電池10は、電気的に直列に接続された複数の単電池(本発明の蓄電素子に相当する)11を有する。組電池10を構成する単電池11の数は、組電池10の要求出力等に基づいて、適宜設定することができる。単電池11としては、ニッケル水素電池やリチウムイオン電池といった二次電池を用いることができる。また、二次電池の代わりに、電気二重層キャパシタを用いることができる。
監視ユニット(本発明の電圧検出回路に相当する)40は、複数の電圧検出ラインL1,L2を介して、各単電池11と接続されている。ここで、図2では省略しているが、監視ユニット40および単電池11の間に位置する電圧検出ラインL1,L2には、スイッチを設けることができる。このスイッチとしては、例えば、フォトMOS(Metal Oxide Semiconductor)リレーを用いることができる。
2つの電圧検出ラインL1は、組電池10の正極端子および負極端子のそれぞれに接続されている。組電池10の正極端子は、図2に示す組電池10の回路構成において、一端に位置する単電池11の正極端子に相当する。組電池10の負極端子は、図2に示す組電池10の回路構成において、他端に位置する単電池11の負極端子に相当する。電圧検出ラインL2は、電気的に直列に接続された2つの単電池11において、一方の単電池11の負極端子と、他方の単電池11の正極端子とに接続されている。
各電圧検出ラインL1,L2には、抵抗素子R11が設けられている。許容電流値よりも大きな電流が抵抗素子R11に流れたとき、抵抗素子R11が溶断することにより、監視ユニット40および組電池10の電気的な接続を遮断することができる。これにより、組電池10(単電池11)から監視ユニット40に過大な電流が流れてしまうことを抑制できる。
各単電池11には、電圧検出ラインL1,L2を介してツェナーダイオードDが電気的に並列に接続されている。ツェナーダイオードDのカソードは、単電池11の正極端子と接続されており、カソードおよび正極端子の間の電流経路に抵抗素子R11が設けられている。ツェナーダイオードDのアノードは、単電池11の負極端子と接続されており、アノードおよび負極端子の間の電流経路に抵抗素子R11が設けられている。
ツェナーダイオードDは、組電池10から監視ユニット40に過電圧が印加することを抑制するために用いられる。すなわち、組電池10から監視ユニット40に過電圧が印加されるときには、ツェナーダイオードDに電流が流れることにより、監視ユニット40に過電圧が印加されることを抑制する。ここで、複数のツェナーダイオードDは、電気的に直列に接続されている。
電圧検出ラインL1には、抵抗素子R21が設けられており、抵抗素子R21は、監視ユニット40に含まれている。抵抗素子R11,R21は、電気的に直列に接続されており、抵抗素子R11,R21の接続点に対して、ツェナーダイオードDのカソードが接続されている。電圧検出ラインL2は、監視ユニット40の内部において、2つの分岐ラインL21,L22に分岐されている。分岐ラインL21には、抵抗素子R21が設けられており、分岐ラインL22には、抵抗素子R22が設けられている。
電圧検出ラインL2において、抵抗素子R11,R21は、電気的に直列に接続されており、抵抗素子R11,R21の接続点には、ツェナーダイオードDのアノードが接続されている。また、電圧検出ラインL2において、抵抗素子R11,R22は、電気的に直列に接続されており、抵抗素子R11,R22の接続点には、ツェナーダイオードDのアノードが接続されている。
電圧検出ラインL1および分岐ラインL22には、キャパシタ(フライングキャパシタ)CおよびスイッチSW1が接続されている。具体的には、キャパシタCやスイッチSW1は、抵抗素子R21およびサンプリングスイッチSW21の間に位置する電圧検出ラインL1と、抵抗素子R22およびサンプリングスイッチSW22の間に位置する分岐ラインL22とに接続されている。サンプリングスイッチSW21は、電圧検出ラインL1に接続されており、サンプリングスイッチSW22は、分岐ラインL22に接続されている。
また、各単電池11の正極端子および負極端子と接続された2つの電圧検出ラインL2に関して、一方の電圧検出ラインL2における分岐ラインL21と、他方の電圧検出ラインL2における分岐ラインL22には、キャパシタCやスイッチSW1が接続されている。具体的には、キャパシタCやスイッチSW1は、抵抗素子R21およびサンプリングスイッチSW21の間に位置する分岐ラインL21と、抵抗素子R22およびサンプリングスイッチSW22の間に位置する分岐ラインL22とに接続されている。ここで、サンプリングスイッチSW21は、分岐ラインL21と接続されており、サンプリングスイッチSW22は、分岐ラインL22と接続されている。
スイッチSW1は、コントローラ30からの制御信号を受けることにより、オンおよびオフの間で切り替わる。スイッチSW1は、組電池10を構成する、すべての単電池11における電圧値を均等化させるために用いられる。
具体的には、特定の単電池11の電圧値が、他の単電池11の電圧値よりも高いときには、特定の単電池11と電気的に並列に接続されたスイッチSW1をオフからオンに切り替えることにより、特定の単電池11を放電させることができる。すなわち、スイッチSW1をオンにすると、特定の単電池11の放電電流を抵抗素子R21,R22に流すことができ、特定の単電池11の電圧値を低下させることができる。これにより、特定の単電池11の電圧値を、他の単電池11の電圧値に揃えることができる。このような処理を均等化処理という。また、スイッチSW1や抵抗素子R21,R22は、本発明の放電回路に相当する。
キャパシタCは、電圧検出ラインL1,L2又は電圧検出ラインL2,L2を介して、単電池11と電気的に並列に接続されているため、キャパシタCには、単電池11に蓄えられた電荷がチャージされる。これにより、キャパシタCの電圧値は、単電池11の電圧値と等しくなる。
各単電池11の正極端子および負極端子と接続されたサンプリングスイッチSW21,SW22は、コンパレータ41に接続されている。具体的には、サンプリングスイッチSW21は、コンパレータ41における一方の入力端子と接続され、サンプリングスイッチSW22は、コンパレータ41における他方の入力端子と接続されている。ここで、各サンプリングスイッチSW21,SW22は、コントローラ30からの制御信号を受けてオンおよびオフの間で切り替わる。また、複数のサンプリングスイッチSW21,SW22は、マルチプレクサによって構成することができる。
特定の単電池11に対応したサンプリングスイッチSW21,SW22だけをオンにすると、コンパレータ41は、特定の単電池11の電圧値(特定の単電池11に対応するキャパシタCの電圧値)を出力する。このように、各単電池11に対応したサンプリングスイッチSW21,SW22を順次オンにすることにより、各単電池11の電圧値を順次検出することができる。コンパレータ41の出力信号は、AD変換された後に、コントローラ30に入力される。これにより、コントローラ30は、各単電池11の電圧値を検出することができる。
図2に示す構成において、ツェナーダイオードDが故障すると、図3の矢印で示す方向において、ツェナーダイオードDにリーク電流が流れてしまう。図3では、No.kの単電池11(本発明における第1の蓄電ブロックに相当する)と電気的に並列に接続されたツェナーダイオードDにリーク電流が流れている。なお、図3に示すNo.k−1,k,k+1は、組電池10に含まれる単電池11の番号を示している。
No.kの単電池11の電圧値を検出するとき、コンパレータ41から出力される電圧値は、ツェナーダイオードDにリーク電流が流れる分だけ、単電池11の実際の電圧値よりも低下してしまう。図3に示す太字の点線は、No.kの単電池11の電圧値を検出するときに電流が流れる経路である。
コンパレータ41から出力される電圧値Vdectは、下記式(1)で表される。
Vdect=Vcell−2×I_leak×R ・・・(1)
上記式(1)において、Vcellは、単電池11の実際の電圧値であり、I_leakは、ツェナーダイオードDに流れるリーク電流の値である。Rは、抵抗素子R11の抵抗値である。「I_leak×R」は、抵抗素子R11にリーク電流が流れることに伴う電圧降下量を示す。ここで、図3に示すリーク電流が流れる経路では、2つの抵抗素子R11が設けられているため、電圧降下量は、「I_leak×R」の2倍となる。
上記式(1)に示すように、コンパレータ41から出力される電圧値Vdectは、単電池11の実際の電圧値Vcellよりも低くなってしまう。このため、電圧値Vdectに基づいて、単電池11(組電池10)の充放電を制御すると、単電池11を過充電してしまうおそれがある。ここで、単電池11の充電を制御するときには、電圧値Vdectが、予め定めた上限電圧値よりも高くならないように、単電池11の充電が制御される。
電圧値Vdectが電圧値Vcellよりも低いと、電圧値Vdectが上限電圧値に到達するまで、単電池11の充電が行われてしまうおそれがある。ここで、電圧値Vcellは、電圧値Vdectよりも高いため、電圧値Vdectが上限電圧値に近づいたときには、電圧値Vcellが上限電圧値を超えてしまい、単電池11を過充電してしまうおそれがある。
そこで、本実施例では、ツェナーダイオードDにリーク電流が流れる異常(リーク異常という)を判別するようにしている。以下、リーク異常を判別する処理について、図4に示すフローチャートを用いて説明する。図4に示す処理は、コントローラ30によって実行される。
ステップS101において、コントローラ30は、過去から現在までの所定期間Δtにおいて、組電池10に流れた電流値I_paを取得する。電流値I_paは、電流センサ21によって検出することができ、電流値I_paに関する情報は、メモリ31に記憶することができる。コントローラ30は、メモリ31にアクセスすることにより、所定期間Δtにおける電流値I_paを読み出すことができる。
また、コントローラ30は、電流値I_paが閾値(電流値)I_th以下であるか否かを判別する。上述したように、組電池10の充放電に応じて、電流値I_paが正の値となったり、負の値となったりするため、電流値I_paおよび閾値I_thを比較するときには、電流値I_paの絶対値と、閾値I_thの絶対値とを比較することができる。閾値I_thは、単電池11の分極状態を解消させることができる電流値であり、予め設定することができる。単電池11を充放電したときには、充放電に応じた分極が発生するが、単電池11に電流が流れなくなると、分極が解消方向に変化する。
このため、閾値I_thとしては、例えば、0[A]に設定することができる。ここで、電流センサ21の検出誤差を考慮することにより、閾値I_thを0[A]とは異なる値に設定することができる。閾値I_thに関する情報は、メモリ31に記憶しておくことができる。電流値I_paが閾値I_th以下であるとき、コントローラ30は、ステップS104の処理を行い、電流値I_paが閾値I_thよりも大きいとき、コントローラ30は、ステップS102の処理を行う。
ステップS102において、コントローラ30は、過去から現在までの所定期間Δtにおいて組電池10に流れた電流値I_paに基づいて、電流の分散値ΔI_paを算出する。分散値ΔI_paは、最も小さい電流値I_paと、最も大きい電流値I_paとの差分に相当する。コントローラ30は、分散値ΔI_paが分散閾値ΔI_thよりも小さいか否かを判別する。
分散閾値ΔI_thは、後述するように、単電池11のOCV(Open Circuit Voltage)を推定する精度を確保できる点に基づいて、予め設定された値である。分散閾値ΔI_thに関する情報は、メモリ31に記憶しておくことができる。分散値ΔI_paが分散閾値ΔI_thよりも小さいとき、コントローラ30は、図4に示す処理を終了する。一方、分散値ΔI_paが分散閾値ΔI_th以上であるとき、コントローラ30は、ステップS103の処理を行う。
ステップS103において、コントローラ30は、各単電池11のOCVを算出する。具体的には、コントローラ30は、組電池10(単電池11)を充放電したときの電流値および電圧値の関係を、図5に示す座標系にプロットする。図5に示す座標系において、横軸は、電流センサ21によって検出された電流値であり、縦軸は、監視ユニット40によって検出された各単電池11の電圧値(CCV:Closed Circuit Voltage)である。
コントローラ30は、図5において、複数のプロットに近似する直線ALを算出する。近似直線ALにおいて、電流値が0[A]であるときの電圧値は、単電池11のOCVに相当する。これにより、単電池11のOCVを算出することができる。ここで、近似直線ALを算出するときには、電流値が分散していることが好ましい。電流値が分散していないときには、近似直線ALを算出しにくくなるとともに、近似直線ALから単電池11のOCVを特定しにくくなる。
そこで、本実施例では、ステップS102において、分散値ΔI_paが分散閾値ΔI_thよりも小さいか否かを判別している。分散値ΔI_paが分散閾値ΔI_thよりも小さいときには、近似直線ALを算出しにくいため、ステップS103の処理を行わないようにしている。一方、分散値ΔI_paが分散閾値ΔI_th以上であるときには、近似直線ALを算出しやすくなるため、ステップS103の処理を行うようにしている。これにより、近似直線ALから単電池11のOCVを推定するときに、OCVの推定精度を向上させることができる。
本実施例では、近似直線ALから単電池11のOCVを推定するときに、分散値ΔI_paを考慮しているが、これに限るものではない。すなわち、分散値ΔI_paを考慮せずに、電流値および電圧値のプロットから近似直線ALを算出し、近似直線ALから単電池11のOCVを算出することができる。
また、近似直線ALから単電池11のOCVを推定するときには、単電池11の温度を考慮することができる。単電池11の温度が低下するほど、近似直線ALから単電池11のOCVを推定するときに、推定誤差が大きくなりやすくなる。単電池11の温度が低下するほど、単電池11の抵抗値が増加しやすくなっており、図5に示す電流値および電圧値の関係を取得しているときに、単電池11の温度が一次的に低下すると、電流値および電圧値の関係が図5に示す近似直線ALから大きく外れてしまう。
このような状態において、近似直線ALを算出してしまうと、近似直線ALから特定されるOCVが、実際のOCVからずれやすくなってしまい、OCVの推定誤差が大きくなりやすい。そこで、OCVの推定誤差を許容できる温度範囲の下限値を予め設定しておき、単電池11の温度が下限値よりも高いときに、近似直線ALから単電池11のOCVを推定することができる。言い換えれば、単電池11の温度が下限値よりも低いときには、近似直線ALを用いたOCVの推定を行わないことができる。
ステップS104において、コントローラ30は、単電池11のOCVを検出する。ステップS104の処理に進むときには、所定期間Δtの間、単電池11(組電池10)を充放電していないときである。ここで、所定期間Δtとは、単電池11の分極が解消されるまでの時間である。分極解消時間Δtは、実験などによって予め測定しておくことができ、分極解消時間Δtに関する情報は、メモリ31に記憶しておくことができる。
ここで、分極解消時間Δtは、単電池11の温度に依存するため、単電池11の温度毎に分極解消時間を設定しておくことができる。単電池11の温度は、温度センサを用いて検出することができるため、検出した単電池11の温度に対応した分極解消時間Δtを設定することができる。分極解消時間Δtの間、単電池11の充放電を行わなければ、単電池11の分極が発生していたとしても、この分極を解消させることができる。
分極を解消させた後であれば、監視ユニット40を用いて検出した単電池11の電圧値(CCV)をOCVと見なすことができる。ここで、単電池11のCCVを検出するときには、単電池11の内部抵抗による電圧降下量の影響を受けにくくするために、微弱な電流を単電池11に流すことが好ましい。
ステップS105において、コントローラ30は、基準電圧値V_refを設定する。本実施例では、組電池10を構成する、すべての単電池11におけるOCVの平均値を、基準電圧値V_refとしている。ステップS103又はステップS104の処理によって、各単電池11のOCVを取得できるため、コントローラ30は、複数の単電池11におけるOCVの平均値を算出することにより、基準電圧値V_refを設定することができる。
ステップS106において、コントローラ30は、ステップS105の処理で設定した基準電圧値V_refと、複数の単電池11におけるOCVのうち、最も低いOCV(OCV_min)との差分が、電圧閾値(本発明の所定差に相当する)ΔV_thよりも大きいか否かを判別する。電圧閾値ΔV_thは、後述するように、ツェナーダイオードDのリーク異常を判別するための値であり、予め設定しておくことができる。電圧閾値ΔV_thに関する情報は、メモリ31に記憶しておくことができる。
ツェナーダイオードDにリーク異常が発生しているとき、複数の単電池11における電圧値(OCV)は、図6に示す関係を有する。図6において、横軸は、単電池11に割り振られた番号を示し、縦軸は、単電池11のOCVを示す。図6では、No.kの単電池11に対応したツェナーダイオードDにリーク異常が発生しているものとしている。
上記式(1)で説明したように、ツェナーダイオードDにリーク異常が発生したとき、このツェナーダイオードDに対応した単電池11の電圧値Vdectは、単電池11の実際の電圧値Vcellよりも低くなる。複数の単電池11における実際の電圧値(OCV)が互いに等しい値(基準電圧値V_ref)であるとき、リーク異常のツェナーダイオードDに対応した単電池11の電圧値Vdectは、基準電圧値V_refよりも、「2×I_leak×R」の分だけ低くなる。
ここで、リーク異常に伴う電圧降下量は、組電池10を充放電しているときに、複数の単電池11において発生する電圧差よりも大きくなりやすい。このため、図6に示すように、No.kの単電池11のOCV(電圧値Vdectに相当する)は、他の単電池11のOCV(電圧値Vdectに相当する)よりも低くなり、最低電圧値OCV_minとなる。ツェナーダイオードDのリーク異常が発生しているときには、上述したように、単電池11の電圧値Vdect(OCV)は、基準電圧値V_refよりも「2×I_leak×R」の分だけ低下する。したがって、電圧閾値ΔV_thとしては、「2×I_leak×R」に設定することができる。
「2×I_leak×R」に含まれる抵抗値Rは、予め測定しておくことができる。ここで、抵抗値Rは、抵抗素子R11の温度に依存することがあるため、抵抗素子R11の温度毎に抵抗値Rを設定しておくことができる。この場合には、抵抗素子R11の温度を検出することにより、この検出温度に対応した抵抗値Rを特定することができる。また、リーク電流値I_leakは、適宜設定することができる。
ここで、電圧閾値ΔV_thは、単電池11が実際に過充電状態となるときの電圧値V_max1と、単電池11の過充電状態を判別するときの電圧値V_max2との差分を考慮して設定することができる。電圧値V_max2は、電圧値V_max1よりも低い値であり、単電池11が実際に過充電状態となる前に、単電池11の過充電状態を判別するために用いられる。
具体的には、電圧閾値ΔV_thは、電圧値V_max1,V_max2の差分よりも小さい値に設定することができる。これにより、最低電圧値OCV_minが電圧値V_max2に近づいても、基準電圧値V_refが電圧値V_max1よりも高くなってしまうことを防止できる。
ここで、単電池11(組電池10)の充電を制御するときには、最低電圧値OCV_minが電圧値V_max2に到達するまで、単電池11の充電が許容されてしまうおそれがある。この場合において、電圧値V_max1,V_max2の差分よりも電圧閾値ΔV_thを小さくしておけば、最低電圧値OCV_minが電圧値V_max2に到達したとしても、実際の単電池11の電圧値(電圧値Vcellに相当する)が電圧値V_max1よりも高くなってしまうことを防止できる。
図4のステップS106において、基準電圧値V_refおよび最低電圧値OCV_minの差分が電圧閾値ΔV_thよりも大きいとき、コントローラ30は、ステップS107の処理を行う。一方、基準電圧値V_refおよび最低電圧値OCV_minの差分が電圧閾値ΔV_th以下であるとき、コントローラ30は、ステップS109の処理を行う。
図6において、No.k−1の単電池11(本発明における第2の蓄電ブロックに相当する)は、No.kの単電池11と電気的に直列に接続されている。言い換えれば、図3に示すように、No.k−1における単電池11の電極端子(負極端子)は、No.kにおける単電池11の電極端子(正極端子)と直接、接続されている。
また、No.k+1の単電池11(本発明における第2の蓄電ブロックに相当する)は、No.kの単電池11と電気的に直列に接続されている。言い換えれば、図3に示すように、No.k+1における単電池11の電極端子(正極端子)は、No.kにおける単電池11の電極端子(負極端子)と直接、接続されている。
同様に、No.k−2の単電池11は、No.k−1の単電池11と電気的に直列に接続されており、No.k−3の単電池11は、No.k−2の単電池11と電気的に直列に接続されている。また、No.k+2の単電池11は、No.k+1の単電池11と電気的に直列に接続されており、No.k+3の単電池11は、No.k+2の単電池11と電気的に直列に接続されている。
No.k−1の単電池11に関して、電圧値Vdect_k−1(OCV)は、基準電圧値V_ref(OCV)よりも高くなる。図3に示すように、No.kの単電池11に対応したツェナーダイオードDにリーク電流が流れているとき、No.k−1の単電池11に対応したキャパシタCには、リーク電流が流れることになる。キャパシタCにリーク電流が流れた分だけ、キャパシタCの電圧値は上昇し、結果として、No.k−1の単電池11における電圧値Vdect_k−1(OCV)は、基準電圧値V_ref(実際の単電池11の電圧値)よりも高くなる。具体的には、No.k−1の単電池11における電圧値Vdect_k−1は、「I_leak×R」の分だけ、言い換えれば、「ΔV_th/2」の分だけ、基準電圧値V_refよりも高くなる。
同様に、No.k+1の単電池11に関して、電圧値Vdect_k+1は、基準電圧値V_refよりも高くなる。図3に示すように、No.kの単電池11に対応したツェナーダイオードDにリーク電流が流れているとき、No.k+1の単電池11に対応したキャパシタCには、リーク電流が流れることになる。
キャパシタCにリーク電流が流れた分だけ、キャパシタCの電圧値は上昇し、結果として、No.k+1の単電池11における電圧値Vdect_k+1(OCV)は、基準電圧値V_ref(実際の単電池11の電圧値)よりも高くなる。具体的には、No.k+1の単電池11における電圧値Vdect_k+1は、「I_leak×R」の分だけ、言い換えれば、「ΔV_th/2」の分だけ、基準電圧値V_refよりも高くなる。
このように、No.kの単電池11に対応したツェナーダイオードDにリーク異常が発生したときには、No.kの単電池11における電圧値Vdect_k(OCV)が基準電圧値V_ref(OCV)よりも低下するだけでなく、No.k−1,k+1における単電池11の電圧値Vdect_k−1,Vdect_k+1(OCV)が基準電圧値V_ref(OCV)よりも高くなる。
そこで、ステップS107において、コントローラ30は、No.k−1,k+1における単電池11の電圧値Vdect_k−1,Vdect_k+1(OCV)に関して、下記式(2),(3)の条件を満たしているか否かを判別する。
上記式(2),(3)において、αは、各電圧値Vdect_k−1,Vdect_k+1のバラツキを考慮した値である。上述したように、ステップS107の処理では、各電圧値Vdect_k−1,Vdect_k+1が、基準電圧値V_refよりもΔV_th/2の分だけ高いか否かを判別するようにしている。ここで、各電圧値Vdect_k−1,Vdect_k+1には、単電池11の自己放電特性などに伴うバラツキが発生することがあるため、このバラツキを許容するために、αを設定している。αの値は、適宜設定することができ、αに関する情報は、メモリ31に記憶することができる。なお、αを0に設定して、αを考慮しなくてもよい。
各電圧値Vdect_k−1,Vdect_k+1が上記式(2),(3)に示す条件を満たすとき、コントローラ30は、ステップS108の処理を行う。一方、各電圧値Vdect_k−1,Vdect_k+1が上記式(2),(3)に示す条件を満たさないとき、コントローラ30は、ステップS109の処理を行う。
ステップS108において、コントローラ30は、No.kの単電池11に対応したツェナーダイオードDにリーク異常が発生しており、異常状態であると判別する。ステップS109において、コントローラ30は、ツェナーダイオードDにリーク異常が発生していなく、正常状態であると判別する。
コントローラ30が異常状態の判別を行ったとき、単電池11の電圧値を検出する回路において、異常が発生していることをユーザなどに警告することができる。警告の手段としては、ディスプレイ又はスピーカを用いることができる。具体的には、異常が発生していることを示す情報をディスプレイに表示させたり、異常が発生していることを示す情報を音としてスピーカから出力させたりすることができる。ここで、ディスプレイに表示させる内容や、スピーカから出力される音の内容は、適宜設定することができる。
本実施例では、各単電池11のOCVを用いて、図6に示す関係を有しているか否かを確認することにより、リーク異常が発生しているか否かを判別している。ここで、各単電池11のCCVを用いて、図6に示す関係を有しているか否かを確認することにより、リーク異常が発生しているか否かを判別することもできる。
ただし、単電池11のCCVには、分極に伴う電圧変化量も含まれるため、複数の単電池11における分極や内部抵抗のバラツキに応じて、CCVもばらついてしまう。複数の単電池11におけるCCVにバラツキが発生した状態では、図6に示す関係を確認しにくいことがある。そこで、本実施例のように、各単電池11のOCVを用いることにより、リーク異常が発生しているか否かを判別しやすくなる。
本実施例では、各単電池11の電圧値を検出しているが、これに限るものではない。具体的には、複数の電池ブロックが電気的に直列に接続されることによって組電池10が構成されているとき、監視ユニット40によって、各電池ブロック(本発明の蓄電ブロックに相当する)の電圧値を検出することができる。このような構成であっても、本発明を適用することができる。ここで、各電池ブロックは、電気的に直列に接続された複数の単電池11を含んでいる。また、各電池ブロックには、電気的に並列に接続された複数の単電池11が含まれていてもよい。
本実施例では、ステップS105の処理において、複数の単電池11におけるOCVの平均値を、基準電圧値V_refとして設定しているが、これに限るものではない。ツェナーダイオードDのリーク異常が発生しているときには、図6に示すように、No.k−1,k,k+1における単電池11の電圧値(OCV)だけが変化しており、他の単電池11における電圧値(OCV)は揃っていることがある。
このため、No.k−1,k,k+1の単電池11を除く他の単電池11(任意の単電池11)における電圧値を、基準電圧値V_refとして設定することもできる。この場合には、他の単電池11の電圧値を検出するだけで、基準電圧値V_refを設定することができ、複数の単電池11におけるOCVの平均値を算出しなくてもよいため、基準電圧値V_refを設定するときの演算負荷を低減することができる。
また、本実施例では、図6に示すNo.k−1,k,k+1における単電池11の電圧値を考慮して、ツェナーダイオードDのリーク異常を判別しているが、これに限るものではない。すなわち、No.k−1,k,k+1の単電池11を除く他の単電池11の電圧値も考慮して、ツェナーダイオードDのリーク異常を判別することもできる。具体的には、図4に示すステップS106,S107の処理に加えて、他の単電池11における電圧値が基準電圧値V_refに揃っているか否かを判別することができる。
ツェナーダイオードDのリーク異常が発生しているとき、上述したように、No.k−1,k,k+1の単電池11における電圧値(Vdect)は、単電池11の実際の電圧値(Vcell)とは異なる。一方、No.k−1,k,k+1の単電池11以外の他の単電池11については、電圧値(Vdect)が実際の電圧値(Vcell)と等しくなり、この電圧値(Vdect)が基準電圧値V_refとなる。
このため、他の単電池11の電圧値が基準電圧値V_refに揃っていることを確認した上で、ツェナーダイオードDのリーク異常が発生していることを判別することができる。このように、リーク異常を判別するための条件を増やすことにより、リーク異常を判別するときの精度を向上させることができる。
図6に示すNo.kの単電池11は、図2に示す組電池10の回路構成において、2つの単電池11に挟まれた単電池11である。ここで、図2に示す組電池10の回路構成において、一端に位置する単電池11についても、ツェナーダイオードDのリーク異常を判別することができる。例えば、図6において、No.k−1,k−2,k−3の単電池11が存在していなくても、No.kの単電池11に関して、ツェナーダイオードDのリーク異常を判別することができる。
具体的には、No.kにおける単電池11の電圧値と、No.k+1における単電池11の電圧値とが、基準電圧値V_refに対して図6に示すように変化していることを確認することにより、No.kの単電池11に対応したツェナーダイオードDにおいて、リーク異常が発生していることを判別できる。ここで、No.k,k+1における単電池11の電圧値だけでなく、No.k,k+1の単電池11を除く他の単電池11(No.k+2,k+3)における電圧値を考慮することもできる。すなわち、他の単電池11の電圧値が基準電圧値V_refに揃っていることも確認すれば、リーク異常の判別精度を向上させることができる。
本実施例では、1つのツェナーダイオードDにおけるリーク異常を判別しているが、複数のツェナーダイオードDにおけるリーク異常を判別することもできる。ここで、図7には、No.k,k+1の単電池11に対応した2つのツェナーダイオードDにおいて、リーク異常が発生した状態を示している。図7は、図6に対応した図である。
2つのツェナーダイオードDにリーク異常が発生しているときには、上述したように、No.k,k+1の単電池11における電圧値(Vdect)は、基準電圧値V_refよりも低くなる。また、No.k−1,k+2の単電池11における電圧値(Vdect)は、基準電圧値V_refよりも高くなる。
図7では、No.kの単電池11に対応したツェナーダイオードDに流れるリーク電流の値が、No.k+1の単電池11に対応したツェナーダイオードDに流れるリーク電流の値よりも大きくなっている。これにより、No.kの単電池11における電圧値が最も低くなり、No.k+1の単電池11における電圧値が2番目に低くなる。
No.kの単電池11に対応したキャパシタCには、No.k+1の単電池11におけるリーク電流が流れるため、No.kの単電池11の電圧値と、基準電圧値V_refとの差分は、「2×I_leak×R」よりも小さくなる。ここで、図7に示す電流値I_leakは、No.kの単電池11に対応したツェナーダイオードDに流れるリーク電流の値を示している。
同様に、No.k+1の単電池11に対応したキャパシタCには、No.kの単電池11におけるリーク電流が流れるため、No.k+1の単電池11の電圧値と、基準電圧値V_refとの差分は、「2×I_leak×R」よりも小さくなる。また、No.k+1の単電池11におけるリーク電流の値は、No.kの単電池11におけるリーク電流の値よりも小さいため、No.k+1の単電池11における電圧値は、No.kの単電池11における電圧値よりも基準電圧値V_refに近づくことになる。
No.k−1の単電池11に対応したキャパシタCには、No.kの単電池11におけるリーク電流が流れるため、No.k−1の単電池11における電圧値は、基準電圧値V_refよりも高くなる。具体的には、No.kの単電池11におけるリーク電流の値に応じた分(「I_leak×R」に相当する)だけ、No.k−1の単電池11における電圧値は、基準電圧値V_refよりも高くなる。
No.k+2の単電池11に対応したキャパシタCには、No.k+1の単電池11におけるリーク電流が流れるため、No.k+2の単電池11における電圧値は、基準電圧値V_refよりも高くなる。具体的には、No.k+1の単電池11におけるリーク電流の値に応じた分(「I_leak×R」に相当する)だけ、No.k+2の単電池11における電圧値は、基準電圧値V_refよりも高くなる。ここで、No.k+1の単電池11におけるリーク電流の値は、No.kの単電池11におけるリーク電流の値よりも小さいため、No.k+2の単電池11における電圧値は、No.k−1の単電池11における電圧値よりも基準電圧値V_refに近づくことになる。
2つのツェナーダイオードDにおいてリーク異常が発生したときには、図7に示す電圧値の関係を確認することにより、リーク異常の判別を行うことができる。なお、2つ以上のツェナーダイオードDにおいて、リーク異常が発生したときであっても、上述した説明と同様の考え方によって、電圧値の関係を特定することができる。
また、図7では、互いに直列に接続された2つのツェナーダイオードDにおいて、リーク異常が発生している例を示しているが、互いに離れた2つのツェナーダイオードDにおいて、リーク異常が発生している場合であっても、上述した説明と同様の考え方によって、電圧値の関係を特定することができる。
すなわち、リーク異常が発生している単電池11では、基準電圧値V_refよりも低い電圧値が検出される。また、リーク異常が発生していない単電池11では、基準電圧値V_refと同じ電圧値が検出される。ここで、リーク異常が発生していない単電池11であっても、リーク異常が発生している単電池11と電気的に直列に接続された単電池11では、基準電圧値V_refよりも高い電圧値が検出される。
図4に示す処理では、電流値I_paが電流閾値I_thよりも大きく、分散値ΔI_paが分散閾値ΔI_thよりも小さいときには、単電池11のOCVが算出されないことになる。例えば、車両が下り坂を走行し続けているときには、単電池11の充電が継続されるため、分散値ΔI_paが分散閾値ΔI_thよりも小さくなりやすい。このように単電池11のOCVが算出されないと、図4に示すステップS105〜ステップS109の処理によって、リーク異常の判別を行うことができなくなってしまう。
リーク異常の判別を行うことができない期間が継続してしまうと、単電池11の過充電が発生してしまうおそれがある。そこで、単電池11の過充電を抑制するために、図8に示す処理を行うことができる。図8に示す処理は、コントローラ30によって実行されるとともに、所定の周期で行われる。
ステップS201において、コントローラ30は、単電池11のOCVを推定できない時間Δt_cを算出する。具体的には、コントローラ30は、タイマを用いて、図4に示すステップS103,S104の処理を行うことができない時間Δt_cをカウントする。そして、コントローラ30は、時間Δt_cが閾値(時間)Δt_thよりも長いか否かを判別する。時間Δt_cが閾値Δt_thよりも長いとき、コントローラ30は、ステップS202の処理を行う。一方、時間Δt_cが閾値Δt_th以下であるとき、コントローラ30は、ステップS206の処理を行う。
閾値Δt_thは、適宜設定することができ、閾値Δt_thに関する情報は、メモリ31に記憶することができる。例えば、図1に示す電池システムで発生しうる最大の電流値で組電池10(単電池11)を充電しても、単電池11が過充電状態に到達しない時間を、閾値Δt_thとして設定することができる。ここで、単電池11が過充電状態に到達するまでの時間は、単電池11のOCVに応じて異なる。そこで、車両が走行しているときに、単電池11のOCVが取り得る最大値を基準として、単電池11が過充電状態に到達するまでの時間を、閾値Δt_thとして設定することができる。
ステップS202において、コントローラ30は、組電池10(単電池11)の充電を停止させる制御を行っているか否かを判別する。組電池10の充電を停止させる制御を行っていないとき、コントローラ30は、ステップS203の処理を行い、組電池10の充電を停止させる制御を行っているとき、コントローラ30は、ステップS204の処理を行う。
ステップS203において、コントローラ30は、組電池10(単電池11)の充電を停止させる制御を行う。具体的には、コントローラ30は、組電池10(単電池11)の充電を許容する上限電力Winを0[kW]に設定することにより、組電池10の充電を停止させる。ここで、組電池10の充電電力が上限電力Winを超えないように、組電池10の充電が制御されるため、上限電力Winを0[kW]に設定することにより、組電池10の充電を停止させることができる。
ここで、組電池10の充放電を制御するとき、上限電力Winは、組電池10の温度やSOC(State of Charge)に応じて変更される。具体的には、組電池10の温度が高くなるほど、上限電力Winを低下させたり、組電池10の温度が低くなるほど、上限電力Winを低下させたりすることができる。また、組電池10のSOCが高くなるほど、上限電力Winを低下させることができる。なお、SOCは、満充電容量に対する、現在の充電容量の割合を示す。
組電池10の充電を停止させることにより、ツェナーダイオードDのリーク異常に伴う単電池11の過充電を防止することができる。また、組電池10の充電が継続される状況において、組電池10の充電を停止させれば、組電池10の充電が行われないことになる。これにより、単電池11の分極を解消させることができ、単電池11のOCVを推定しやすくなる。
組電池10の充電を停止させた後も、時間Δt_cが閾値Δt_thよりも長いとき、コントローラ30は、ステップS204の処理を行う。ステップS204において、コントローラ30は、電流センサ21の出力に基づいて、電流積算値ΣIを算出する。具体的には、コントローラ30は、図8に示す処理が繰り返して行われるたびに、電流センサ21によって検出された電流値を積算することにより、電流積算値ΣIを算出する。
ステップS205において、コントローラ30は、単電池11の充電が過多にならないように、上限電力Winを設定する。すなわち、コントローラ30は、ステップS204の処理で算出された電流積算値ΣIが負の値とならないように、上限電力Winを設定する。例えば、組電池10の充電を停止させる制御を行った後に、組電池10の放電が行われたときには、この放電量(放電電流の積算値)の分だけ、組電池10の充電を許容することができる。
具体的には、コントローラ30は、下記式(4)に基づいて、上限電力Winを設定することができる。ここで、下記式(4)に基づく上限電力Winの設定は、電流積算値ΣIが正の値であるとき、言い換えれば、単電池11の充放電状態が放電側に片寄っているときに行うことができる。
Win=ΣI/T×V ・・・(4)
上記式(4)において、ΣIは、ステップS204の処理で算出された電流積算値であり、Vは、組電池10の電圧値である。組電池10の電圧値は、監視ユニット40を用いて検出することができる。Tは、上限電力Winを設定する時間である。時間Tは、ドライバビリティなどを考慮して、予め設定しておくことができる。
ステップS206において、コントローラ30は、ステップS203又はステップS205の処理で設定された上限電力Winの設定を解除する。ステップS203又はステップS205の処理によって、単電池11のOCVを推定することができたときには、ステップS203又はステップS205の処理に基づいて、上限電力Winを設定し続ける必要がなくなるため、上限電力Winの設定を解除することができる。
図9には、図8に示す処理を行ったときの電流値の挙動(一例)を示す。
時刻t0から時刻t1までは、充電電流値が一定である。時刻t0から時刻t1までの間は、組電池10が充電されており、電流値が一定であるため、図4に示すステップS103又はステップS104の処理を行うことができない。そこで、時刻t1において、上限電力Winを0[kW]に設定することにより、組電池10の充電を停止させる(図8に示すステップS203の処理)。なお、時刻t0よりも前の時間では、電流値が0[A]となっているため、図4に示すステップS104の処理によって、単電池11のOCVを検出することができる。
組電池10の充電を停止させると、図9に示すように、電流値が低下し、時刻t2において、電流値が0[A]となる。時刻t2以降において、電流値が0[A]で継続していれば、図4に示すステップS104の処理によって、単電池11のOCVを検出することができる。OCVを検出できたときには、上限電力Winを0[kW]に設定する制御が終了し、上限電力Winは、0[kW]に設定する前の状態に戻る。
一方、時刻T2以降において、図4に示すステップS104の処理によって単電池11のOCVを検出する前に、組電池10が放電されることもある。図9では、時刻t3において、組電池10が放電されている。
この場合には、組電池10を放電しているときの電流積算値ΣIが算出され、放電量の分だけ、組電池10の充電が行われるように、上限電力Winが設定される。放電量の分だけ、組電池10を充電しても、組電池10(単電池11)の電圧値は、放電を開始する前の電圧値に戻るだけであり、組電池10(単電池11)を過充電させることはない。
このように、上限電力Winを設定することにより、図9に示すように、電流値を放電側および充電側に分散させることができる。これにより、図4に示すステップS103の処理によって、単電池11のOCVを推定しやすくなる。
なお、図8に示すステップS203の処理では、上限電力Winを0[kW]に設定しているが、これに限るものではない。具体的には、上限電力Winを低下させればよい。上限電力Winを低下させれば、組電池10の充電を抑制することができ、リーク異常に伴う単電池11の過充電を抑制することができる。
本実施例では、ツェナーダイオードDのリーク異常を判別しているが、これに限るものではない。電流の流れを遮断することができる電気素子が、単電池11と電気的に並列に接続されている構成では、電気素子にリーク電流が流れるおそれがある。このため、本実施例と同様の方法によって、この電気素子のリーク異常を判別することができる。図2に示す構成では、リーク異常を判別する電気素子として、スイッチSW1を挙げることができる。具体的には、スイッチSW1がオンの状態で固着しているときには、この異常を、本実施例と同様の方法によって判別することができる。