(57)【要約】【課題】電池セルの状態を考慮して適切に充放電を行う。【解決手段】各電池セルの温度を測定し、最大温度および最小温度を抽出する。そして、最大温度および最小温度に基づき電池セルの温度差を算出し、算出された電池セルの温度差が所定の閾値と比較して大きい場合には、温度差異常であると判定し、充電停止電圧Ｖctを通常の充電停止電圧Ｖct_refと比較して低い値に設定し、充電停止電流Ｉctを通常の充電停止電流Ｉct_refと比較して低い値に設定する。また、放電停止電圧Ｖdtを通常の放電停止電圧Ｖdt_refと比較して高い値に設定し、放電停止電流Ｉdtを通常の放電停止電流Ｉdt_refと比較して低い値に設定する。【選択図】図１４
2009059504.tif 000002
【特許請求の範囲】
【請求項１】
複数の電池セルが直列および／または並列に接続された二次電池の電池パックにおいて、
上記電池セル毎または電池セルのブロック毎の温度を所定時間毎にそれぞれ測定する温度検出部と、
上記測定された温度に基づき上記二次電池の充電停止電圧および充電停止電流と、放電停止電圧および放電停止電流との少なくとも一方を制御する制御部と、
上記電池セルまたは上記電池セルのブロックの間の温度差に対する第１の閾値を記憶する記憶部と
を有し、
上記制御部は、
上記測定された温度から抽出された最大温度および最小温度に基づき温度差を算出し、
上記温度差と上記第１の閾値とを比較し、上記温度差が上記第１の閾値よりも大きい場合には、上記温度差に応じて上記充電停止電圧が基準の充電停止電圧よりも低く、上記充電停止電流が基準の充電停止電流よりも低く、上記放電停止電圧が基準の放電停止電圧よりも高く、上記放電停止電流が基準の放電停止電流よりも低くなるように、上記充電停止電圧および上記充電停止電流と、上記放電停止電圧および上記放電停止電流との少なくとも一方を設定し、
温度差異常を示すフラグを上記記憶部にセットする
ことを特徴とする電池パック。
【請求項２】
請求項１に記載の電池パックにおいて、
上記記憶部は、隣接位置の間の温度差に対する第２の閾値と、最大温度位置における温度の時間変化率に対する第３の閾値と、上記最大温度位置に隣接する位置における温度の時間変化率に対する第４の閾値とをさらに記憶し、
上記制御部は、
上記測定された温度から、最大温度および該最大温度位置の隣接位置における隣接温度を抽出し、
上記最大温度および上記隣接温度に基づき温度差を算出し、
上記温度差および上記第２の閾値を比較し、上記温度差が上記第２の閾値よりも大きい場合には、上記最大温度が上記隣接温度と比較して異常な高温であると判定し、
所定時間経過後に測定された各位置の温度から上記最大温度位置および上記隣接位置の隣接温度を抽出し、
上記最大温度および上記所定時間経過後の最大温度に基づき最大温度の時間変化率を算出するとともに、上記隣接温度および上記所定時間経過後の隣接温度に基づき隣接温度の時間変化率を算出し、
上記最大温度の時間変化率および上記第３の閾値を比較するとともに、上記隣接温度の時間変化率および上記第４の閾値を比較し、上記最大温度の時間変化率が上記第３の閾値よりも小さく、且つ、上記隣接温度の時間変化率が上記第４の閾値よりも大きい場合には、上記温度検出部が故障していると判定する
ことを特徴とする電池パック。
【請求項３】
請求項１に記載の電池パックにおいて、
上記記憶部は、隣接位置の間の温度差に対する第５の閾値と、最小温度位置における温度の時間変化率に対する第６の閾値と、上記最小温度位置に隣接する位置における温度の時間変化率に対する第７の閾値とをさらに記憶し、
上記制御部は、
上記測定された温度から、最小温度および該最小温度位置の隣接位置における隣接温度を抽出し、
上記最小温度および上記隣接温度に基づき温度差を算出し、
上記温度差および上記第５の閾値を比較し、上記温度差が上記第５の閾値よりも大きい場合には、上記最小温度が上記隣接温度と比較して異常な低温であると判定し、
所定時間経過後に測定された各位置の温度から上記最小温度位置および上記隣接位置の隣接温度を抽出し、
上記最小温度および上記所定時間経過後の最小温度に基づき最小温度の時間変化率を算出するとともに、上記隣接温度および上記所定時間経過後の隣接温度に基づき隣接温度の時間変化率を算出し、
上記最小温度の時間変化率および上記第６の閾値を比較するとともに、上記隣接温度の時間変化率および上記第７の閾値を比較し、上記最小温度の時間変化率が上記第６の閾値よりも小さく、且つ、上記隣接温度の時間変化率が上記第７の閾値よりも大きい場合には、上記温度検出部が故障していると判定する
ことを特徴とする電池パック。
【請求項４】
請求項２または請求項３に記載の電池パックにおいて、
上記制御部は、
上記温度検出部が故障していると判定した場合に、上記故障した温度検出部の位置の隣接位置における温度検出部が故障しているか否かを判定し、上記隣接位置の温度検出部が故障していないと判定した場合には、上記測定された温度から上記隣接位置の隣接温度を抽出し、
上記隣接温度に基づき、上記故障した温度検出部の位置の温度を補完する
ことを特徴とする電池パック。
【請求項５】
請求項１に記載の電池パックにおいて、
上記制御部は、
充電の際に、上記記憶部に上記温度差異常フラグがセットされているか否かを判定し、上記温度差異常フラグがセットされている場合には、外部の機器に対して充電電圧および充電電流を基準の充電電圧および充電電流よりも低くするように要求し、
放電の際に、上記記憶部に上記温度差異常フラグがセットされているか否かを判定し、上記温度差異常フラグがセットされている場合には、外部の機器に対して負荷を基準の負荷よりも低くして放電電流を低くするように要求する
ことを特徴とする電池パック。
【請求項６】
複数の電池セルが直列および／または並列に接続された二次電池の電池パックの制御方法において、
上記電池セル毎または電池セルのブロック毎の温度を所定時間毎にそれぞれ測定し、
上記電池セルまたは上記電池セルのブロックの間の温度差に対する第１の閾値を記憶部に記憶し、
上記測定された温度から抽出された最大温度および最小温度に基づき温度差を算出し、
上記温度差と上記第１の閾値とを比較し、上記温度差が上記第１の閾値よりも大きい場合には、上記温度差に応じて上記充電停止電圧が基準の充電停止電圧よりも低く、上記充電停止電流が基準の充電停止電流よりも低く、上記放電停止電圧が基準の放電停止電圧よりも高く、上記放電停止電流が基準の放電停止電流よりも低くなるように、上記充電停止電圧および上記充電停止電流と、上記放電停止電圧および上記放電停止電流との少なくとも一方を設定し、
温度差異常を示すフラグを上記記憶部にセットする
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、二次電池の電池パックおよび制御方法に関する。
【背景技術】
【０００２】
リチウムイオン二次電池などを用いた二次電池の電池パックは、使用する電子機器の仕様に合わせて、複数の電池セルが直列および／または並列に接続されたものが広く使用されている。このような電池パックでは、電子機器の構成や使用環境によって各電池セルの温度に不均衡が生じてしまう場合がある。
【０００３】
例えば、電池パックをＰＣ（Personal Computer）などの電子機器で使用する場合、ＰＣに搭載されたＣＰＵ（Central Processing Unit）などの発熱部品に近接して配置された電池セルは、発熱部品からの熱の影響を受けるため、発熱部品から離れた位置に配置された電池セルと比較して温度が上昇してしまう。
【０００４】
複数の電池セルのうち、所定の電池セルの温度が他の電池セルと比較して高温となり、電池セル間の温度に不均衡が生じた状態で放置された場合には、高温状態の電池セルの劣化が促進し、電池セルの内部抵抗や自己放電量が増加してしまう。そして、電池セルの内部抵抗や自己放電量が増加すると、電池セル間の電池電圧に不均衡が生じてしまい、電池セルの充電容量や放電容量に不均衡が生じる。
【０００５】
このように、電池セルの充電容量や放電容量に不均衡が生じた状態で充放電を行った場合、例えば、充電の際に他の電池セルと比較して充電容量が少ない電池セルが満充電となると、残りの電池セルが充電可能であっても過充電防止のために充電を停止してしまい、全ての電池セルに対して十分に充電することができない。また、放電の際に他の電池セルと比較して放電容量が少ない電池セルが完放電となると、残りの電池セルが放電可能であっても過放電防止のために放電を停止してしまい、全ての電池セルを完全に放電することができない。
【０００６】
このような問題点を解決するために、下記の特許文献１には、各電池セルの温度を測定して電池セル間の温度差を検出し、温度差の偏差に基づき温度異常であるか否かを判定し、温度異常を検出した場合には、冷却ファンを作動させて各電池セルの温度を均一に保つように制御する技術が記載されている。
【０００７】
【特許文献１】特開２００５−１１７５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述の特許文献１では、各電池セルの温度を均一に保つことにより、温度の不均衡によって電池セルがさらに劣化してしまうことを抑制することができる。しかしながら、この場合、温度の不均衡により電池セルが既に劣化している場合であっても、充放電の際に通常の充放電条件が適用されるため、電池セルの性能を十分に発揮することが困難であるという問題点があった。
【０００９】
したがって、この発明の目的は、より確実に温度異常を検出し、電池セルの状態を考慮して適切に充放電を行うことにより、電池セルの劣化を抑制して安全性を向上させることができる電池パックおよび制御方法を提供することにある。
【課題を解決するための手段】
【００１０】
上述した課題を解決するために、第１の発明は、複数の電池セルが直列および／または並列に接続された二次電池の電池パックにおいて、電池セル毎または電池セルのブロック毎の温度を所定時間毎にそれぞれ測定する温度検出部と、測定された温度に基づき二次電池の充電停止電圧および充電停止電流と、放電停止電圧および放電停止電流との少なくとも一方を制御する制御部と、電池セルまたは電池セルのブロックの間の温度差に対する第１の閾値を記憶する記憶部とを有し、制御部は、測定された温度から抽出された最大温度および最小温度に基づき温度差を算出し、温度差と第１の閾値とを比較し、温度差が第１の閾値よりも大きい場合には、温度差に応じて充電停止電圧が基準の充電停止電圧よりも低く、充電停止電流が基準の充電停止電流よりも低く、放電停止電圧が基準の放電停止電圧よりも高く、放電停止電流が基準の放電停止電流よりも低くなるように、充電停止電圧および充電停止電流と、放電停止電圧および放電停止電流との少なくとも一方を設定し、温度差異常を示すフラグを記憶部にセットすることを特徴とする電池パックである。
【００１１】
また、第２の発明は、複数の電池セルが直列および／または並列に接続された二次電池の電池パックの制御方法において、電池セル毎または電池セルのブロック毎の温度を所定時間毎にそれぞれ測定し、電池セルまたは電池セルのブロックの間の温度差に対する第１の閾値を記憶部に記憶し、測定された温度から抽出された最大温度および最小温度に基づき温度差を算出し、温度差と第１の閾値とを比較し、温度差が第１の閾値よりも大きい場合には、温度差に応じて充電停止電圧が基準の充電停止電圧よりも低く、充電停止電流が基準の充電停止電流よりも低く、放電停止電圧が基準の放電停止電圧よりも高く、放電停止電流が基準の放電停止電流よりも低くなるように、充電停止電圧および充電停止電流と、放電停止電圧および放電停止電流との少なくとも一方を設定し、温度差異常を示すフラグを記憶部にセットすることを特徴とする制御方法である。
【００１２】
上述したように、第１および第２の発明では、電池セル毎または電池セルのブロック毎の温度を所定時間毎にそれぞれ測定し、測定された温度から抽出された最大温度および最小温度に基づき温度差を算出し、温度差と第１の閾値とを比較し、温度差が上記電池セルまたは上記電池セルのブロックの間の温度差に対する第１の閾値よりも大きい場合には、温度差に応じて充電停止電圧が基準の充電停止電圧よりも低く、充電停止電流が基準の充電停止電流よりも低く、放電停止電圧が基準の放電停止電圧よりも高く、放電停止電流が基準の放電停止電流よりも低くなるように、充電停止電圧および充電停止電流と、放電停止電圧および放電停止電流との少なくとも一方を設定するようにしているため、温度異常の際に、二次電池に対して適切な充放電が行われる。
【発明の効果】
【００１３】
この発明は、温度差異常が検出された場合に、二次電池に対する充放電停止条件を変更するため、異常な温度となった電池セルに対して適切に充放電を行うことができ、電池セルの劣化を抑制することができるという効果がある。
【発明を実施するための最良の形態】
【００１４】
以下、この発明の実施の一形態について、図面を参照しながら説明する。電池パック１は、図１に示すように、充電時には充電器２に装着され、正極端子４および負極端子５がそれぞれ充電器２の正極端子および負極端子に接続され、充電が行われる。また、電子機器使用時には正極端子４および負極端子５がそれぞれ負荷３の正極端子および負極端子に接続され、放電が行われる。なお、この例では、充電器２および負荷３は、外部の電子機器に搭載されているものとし、電池パック１が電子機器に接続された際に、充電器２および負荷３を用いて充電および放電が行われる。
【００１５】
電池パック１は主に、二次電池１０、温度検出部１１、電圧検出部１２、電流検出部１３、スイッチ回路１４、制御部１５、充放電制御部１６、記憶部１７および電流検出抵抗１８で構成されている。二次電池１０は、例えば、リチウムイオン電池の二次電池であり、１または複数の二次電池セルを直列および／または並列に接続したものである。また、詳細は後述するが、例えば、二次電池１０内の各電池セルには、温度を検出するための温度素子が設けられている。
【００１６】
温度検出部１１は、例えば二次電池１０内の各電池セルに設けられた温度素子を用いて、各電池セルの温度を検出し、制御部１５に対して検出結果である温度情報を供給する。温度検出部１１の詳細については後述する。電圧検出部１２は、二次電池１０の電圧を検出し、制御部１５に対して検出結果である電圧情報を供給する。電流検出部１３は、電流検出抵抗１８を使用して電流の大きさおよび向きを検出し、制御部１５に対して検出結果である電流情報を供給する。
【００１７】
制御部１５は、電圧検出部１２および電流検出部１３から供給された電圧情報および電流情報に基づき、二次電池１０の電圧が過充電検出電圧になった場合や、二次電池１０の電圧が過放電検出電圧以下になった場合に、充放電制御部１６に対して充放電の許可／禁止命令を供給する。
【００１８】
また、制御部１５は、温度検出部１１から供給された各電池セルの温度情報と、電池セルのセル位置を示す情報（以下、セル位置情報と適宜称する）とを関連付けて記憶部１７に記憶させる。記憶部１７としては、例えばＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory）などの不揮発性メモリを用いることができる。
【００１９】
さらに、制御部１５は、温度情報に基づき、電池セル間の温度差を算出する。そして、算出結果に基づき各電池セルに設けられた温度素子の故障判定処理や、二次電池の充放電停止条件変更処理などの各種処理を行う。なお、温度素子の故障判定処理および二次電池の充放電停止条件変更処理については後述する。
【００２０】
温度素子の故障判定処理および充放電停止条件変更処理により、温度素子の故障や電池セルの温度異常を検出した場合には、通信端子６ａおよび６ｂを介して電子機器と通信を行い、温度素子故障や温度異常に関する情報を電子機器に対して送信する。電子機器との通信としては、例えば、ＳＭバス（System Management Bus）を用いることができる。
【００２１】
記憶部１７は、温度素子の故障判定処理や二次電池の充放電停止条件変更処理などの各種処理を行う際に用いられる閾値などのパラメータが予め格納されている。そして、これらのパラメータは、制御部１５の制御によって読み出される。また、記憶部１７には、検出された温度の温度情報およびその位置を示す位置情報が関連付けられて格納される。
【００２２】
充放電制御部１６は、制御部１５から供給された充放電の許可／禁止命令に基づき、スイッチ回路１４に対して充放電を停止するための制御信号を送ることにより、過充電、過放電を防止する。
【００２３】
スイッチ回路１４は、充電制御ＦＥＴ（Field Effect Transistor）１９と、放電制御ＦＥＴ２０とから構成されている。電池電圧が過充電検出電圧となった場合には、充放電制御部１６からの制御信号により充電制御ＦＥＴ１９をＯＦＦとし、充電電流が流れないように制御される。なお、充電制御ＦＥＴ１９のＯＦＦ後は、寄生ダイオード１９ａを介することによって放電のみが可能となる。また、電池電圧が過放電検出電圧となった場合には、充放電制御部１６からの制御信号により放電制御ＦＥＴ２０をＯＦＦとし、放電電流が流れないように制御される。なお、放電制御ＦＥＴ２０のＯＦＦ後は、寄生ダイオード２０ａを介することによって充電のみが可能となる。
【００２４】
二次電池１０は、例えば、図２に示すように、電池セル２１ａ，２１ｂ，２１ｃ，２１ｄ，２１ｅ，２１ｆ（以下、特に区別する必要がない場合には、単に電池セル２１と称する）が２並列３直列に接続された構成とされている。
【００２５】
各電池セル２１ａ，２１ｂ，２１ｃ，２１ｄ，２１ｅ，２１ｆの付近には、サーミスタなどの温度素子２２ａ，２２ｂ，２２ｃ，２２ｄ，２２ｅ，２２ｆ（以下、特に区別する必要がない場合には、単に温度素子２２と称する）がそれぞれ設けられている。温度素子２２は、各電池セル２１の温度を検出し、温度検出部１１に設けられた結線切替スイッチ２３に対して検出した温度情報を供給する。
【００２６】
結線切替スイッチ２３は、スイッチを切り替えることにより、各電池セル２１から供給された温度情報を切り替えて制御部１５に供給する。スイッチの切り替えは、制御部１５の制御によって行われる。その際に、制御部１５は、切り替え先によって、供給された温度情報がどの温度素子のものであるかを判断し、受け取った温度情報に基づき、どの電池セルであるかを示す情報であるセル位置情報を取得することができる。セル位置情報としては、例えば、最前段または最後段の電池セルから順に、電池セル毎に所定に割り当てられた番号が用いられる。
【００２７】
この発明の実施の一形態による電池パック１における各種処理について説明する。背景技術の項で説明したように、各電池セル２１間の温度に不均衡が生じた状態で電池パック１の充放電を行った場合には、異常な温度となっている電池セル２１が劣化してしまう。そのため、この発明の実施の一形態では、各電池セル２１間の温度に不均衡が生じて温度差異常を検出した場合に、検出結果に基づき二次電池１０に対する充放電停止条件を変更して異常な温度となっている電池セル２１に対して適切に充放電を行い、電池セルの劣化を抑制するようにしている。
【００２８】
ところで、各電池セル２１間の温度に不均衡が生じる要因としては、電子機器からの発熱の影響が考えられる。例えば、電子機器に設けられたＣＰＵなどの部品は、電子機器が様々な処理を行うことによって発熱する発熱部品である。このような発熱部品を有する電子機器に電池パック１を接続した場合、発熱部品に近接した位置に配置された電池セル２１は、発熱部品からの熱の影響により他の電池セル２１と比較して温度が上昇してしまうため、温度差異常が検出されることになる。
【００２９】
そこで、この発明の実施の一形態では、温度差異常を検出した際に、電子機器に対して温度差異常であることを通知し、充電の際の充電電圧および充電電流の調整や、放電の際の負荷の調整を行うように要求するようにしている。こうすることにより、電子機器における発熱を抑制して電子機器からの発熱の影響を少なくし、温度の不均衡を抑制することができる。
【００３０】
また、実際に各電池セル２１間の温度に不均衡が生じる以外に、各電池セル２１の温度を測定する温度素子が故障し、異常な温度の情報を出力してしまうために、各電池セル２１間の温度差異常が検出されてしまうことが考えられる。具体的には、例えば、温度素子２２が故障して短絡状態や開放状態となった場合、温度素子２２は異常な高温や低温を示す場合がある。そのため、各電池セル２１の正確な温度を検出することができなくなってしまう。
【００３１】
このような状態で、二次電池１０に対する充放電停止条件の変更を行うと、実際には各電池セル２１間に温度の不均衡が生じていない場合であっても充放電停止条件を変更してしまうため、電池パック１における充放電の効率が悪化してしまう。そこで、この発明の実施の一形態では、温度差異常を検出した際の二次電池１０に対する充放電停止条件を変更する前に、実際に温度の不均衡が生じているか否かを判定するため、温度素子２２が故障しているか否かを判定するようにしている。そして、温度素子２２が故障していると判定された場合には、正常に動作している温度素子２２の位置の温度に基づき、故障した温度素子２２の位置の温度を補完する。
【００３２】
この発明の実施の一形態による電池パック１における各種処理は、図３に示すように、ステップＳ１において、各電池セル２１に設けられた温度素子２２が故障しているか否かを判定するための温度素子故障判定処理が行われる。ステップＳ２では、温度素子２２の故障が検出されたか否かが判定される。温度素子２２の故障が検出された場合には、処理がステップＳ３に移行し、ステップＳ３において、故障した温度素子２２の位置の温度の補完処理が行われる。一方、温度素子２２の故障が検出されなかった場合には、処理がステップＳ４に移行する。
【００３３】
ステップＳ４では、二次電池１０に対する充放電の停止条件を変更するための充放電停止条件の変更処理が行われる。そして、ステップＳ５において、電池パック１から電子機器に対して、充電電圧および充電電流の調整や、負荷の調整を行うための通知処理が行われる。
【００３４】
このように、この発明の実施の一形態では、温度差異常となった際に、温度素子２２が故障しているか否かを判定し、温度素子２２の故障が検出された場合には、故障した温度素子２２の位置の温度を補完する。そして、温度素子２２の故障が検出されなかった場合、および、故障が検出され温度が補完された場合には、二次電池１０に対する充放電停止条件を変更するとともに、電子機器において充電電圧、充電電流および負荷の調整を行う。こうすることにより、電池パックの充放電を適切に行うことができ、電池セル２１間の温度の不均衡を抑制することができる。
【００３５】
以下では、（１）温度素子故障判定処理、（２）温度補完処理、（３）充放電停止条件変更処理、（４）電子機器への通知処理の順に、各処理について詳細に説明する。
【００３６】
（１）温度素子故障判定処理
先ず、温度素子の故障判定処理について説明する。例えば、図４に示すように、電池セル２１ａ〜２１ｆが２並列３直列に接続された二次電池１０を点線Ｖ1，Ｖ2およびＶ3で示すブロックに分け、点線Ｖ1，Ｖ2およびＶ3で囲まれたブロックの電池セル（以下、セルブロックＶ1，Ｖ2およびＶ3と適宜称する）の温度がそれぞれＴ1，Ｔ2およびＴ3である場合について考える。
【００３７】
例えば、セルブロックＶ2の温度がセルブロックＶ1およびＶ3と比較して高温であるときで、温度素子が正常に動作している場合には、図５Ａに示すように、高温となっているセルブロックＶ2から放出された熱が隣接するセルブロックＶ1およびＶ3に移動する。そのため、セルブロックＶ2の所定時間経過後の温度Ｔ2は、セルブロックＶ1およびＶ3の吸熱により下降する。また、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3の温度Ｔ1およびＴ3は、セルブロックＶ2の発熱により上昇する。なお、ここでは、互いに隣り合う位置関係を「隣接する」と適宜称して説明する。
【００３８】
一方、温度素子が故障している場合には、図５Ｂに示すように、実際のセルブロックＶ2の温度にかかわらず、セルブロックＶ2に設けられた温度素子から異常な高温の温度値が常に出力され、セルブロックＶ2の所定時間経過後の温度変化がほとんどないように検出されてしまう。
【００３９】
また、セルブロックＶ2の温度がセルブロックＶ1およびＶ3と比較して低温であるときで、温度素子が正常に動作している場合には、図６Ａに示すように、低温となっているセルブロックＶ2に隣接するセルブロックＶ1およびＶ3から放出された熱がセルブロックＶ2に移動する。そのため、低温となっているセルブロックＶ2の所定時間経過後の温度Ｔ2は、隣接するセルブロックＶ1およびＶ3の発熱により上昇する。また、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3の温度Ｔ1およびＴ3は、セルブロックＶ2の吸熱により下降する。
【００４０】
一方、温度素子が故障している場合には、図６Ｂに示すように、実際のセルブロックＶ2の温度にかかわらず、セルブロックＶ2に設けられた温度素子から異常な低温の温度値が常に出力され、セルブロックＶ2の所定時間経過後の温度変化がほとんどないように検出されてしまう。
【００４１】
このように、温度素子が故障した場合には、温度素子から出力される温度が異常な高温や低温となり、所定時間経過した後の温度もほとんど変化しないように検出される。したがって、異常な高温や低温となった位置における所定時間経過後の温度変化の度合いにより、その位置に設けられた温度素子が故障しているか否かを判定することができる。
【００４２】
図４に示す二次電池１０を例にとり、例えばセルブロックＶ2が異常な高温である場合の温度素子故障判定方法について具体的に説明する。先ず、各セルブロックＶ1，Ｖ2およびＶ3の温度Ｔ1，Ｔ2およびＴ3を測定し、測定した温度Ｔ1，Ｔ2およびＴ3の中から最大温度を抽出する。この例の場合には、セルブロックＶ2が他のセルブロックＶ1およびＶ3と比較して高温となっているため、セルブロックＶ2の温度Ｔ2が最大温度となる。
【００４３】
そして、最大温度のセルブロックＶ2と、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3との温度差Ｔ2−Ｔ1およびＴ2−Ｔ3を算出する。算出した温度差Ｔ2−Ｔ1およびＴ2−Ｔ3が予め設定された温度差の閾値よりも大きい場合には、最大温度のセルブロックＶ2の温度が、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3と比較して異常な高温となっていると判定する。
【００４４】
また、所定時間Δｔだけ経過した後に、セルブロックＶ1，Ｖ2およびＶ3の温度Ｔ1´，Ｔ2´およびＴ3´を測定し、セルブロックＶ1，Ｖ2およびＶ3における温度の時間変化率ΔＴ1／Δｔ（＝（Ｔ1´−Ｔ1）／Δｔ）、ΔＴ2／Δｔ（＝（Ｔ2´−Ｔ2）／Δｔ）およびΔＴ3／Δｔ（＝（Ｔ3´−Ｔ3）／Δｔ）を算出する。
【００４５】
算出された最大温度のセルブロックＶ2における温度の時間変化率ΔＴ2／Δｔが、予め設定された最大温度位置における温度の時間変化率の閾値よりも小さく、且つ、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3における温度の時間変化率ΔＴ1／ΔｔおよびΔＴ3／Δｔが、予め設定された最大温度位置に隣接する位置における温度の時間変化率の閾値よりも大きい場合には、セルブロックＶ2に設けられた温度素子が故障していると判定する。
【００４６】
次に、セルブロックＶ2が異常な低温である場合の温度素子故障判定方法について具体的に説明する。上述と同様にして各セルブロックＶ1，Ｖ2およびＶ3の温度Ｔ1，Ｔ2およびＴ3を測定し、測定した温度Ｔ1，Ｔ2およびＴ3の中から最小温度を抽出する。この例の場合には、セルブロックＶ2が他のセルブロックＶ1およびＶ3と比較して低温となっているため、セルブロックＶ2の温度Ｔ2が最小温度となる。
【００４７】
そして、最小温度のセルブロックＶ2と、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3との温度差Ｔ1−Ｔ2およびＴ3−Ｔ2を算出する。算出した温度差Ｔ1−Ｔ2およびＴ3−Ｔ2が予め設定された温度差の閾値よりも大きい場合には、最小温度のセルブロックＶ2の温度が、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3と比較して異常な低温となっていると判定する。
【００４８】
また、時間Δｔだけ経過した後に、セルブロックＶ1，Ｖ2およびＶ3の温度Ｔ1”，Ｔ2”およびＴ3”を測定し、セルブロックＶ1，Ｖ2およびＶ3における温度の時間変化率ΔＴ1´／Δｔ（＝（Ｔ1”−Ｔ1）／Δｔ）、ΔＴ2´／Δｔ（＝（Ｔ2”−Ｔ2）／Δｔ）およびΔＴ3´／Δｔ（＝（Ｔ3”−Ｔ3）／Δｔ）を算出する。
【００４９】
算出された最小温度のセルブロックＶ2における温度の時間変化率ΔＴ2´／Δｔが、予め設定された最小温度位置における温度の時間変化率の閾値よりも小さく、且つ、セルブロックＶ2に隣接するセルブロックＶ1およびＶ3における温度の時間変化率ΔＴ1´／ΔｔおよびΔＴ3´／Δｔが、予め設定された最小温度位置に隣接する位置における温度の時間変化率の閾値よりも大きい場合には、セルブロックＶ2に設けられた温度素子が故障していると判定する。
【００５０】
温度素子が異常な高温を検出した場合の温度素子故障判定処理の流れについて、図７に示すフローチャートを参照して説明する。なお、特別な記載がない限り、以下の処理は、制御部１５の制御の下で行われるものとする。
【００５１】
ステップＳ１１では、Ｎ個の温度素子２２を用いてＮ箇所の位置の温度Ｔ[１]，Ｔ[２]、・・・、Ｔ[Ｎ]が測定され、測定された温度およびその位置情報が関連付けられて記憶部１７に格納される。ステップＳ１２では、測定された各位置の温度Ｔ[１]，Ｔ[２]、・・・、Ｔ[Ｎ]の中から、最大温度Ｔmaxが抽出され、最大温度Ｔmaxおよび最大温度位置ＮTmaxが記憶部１７に格納される。
【００５２】
ステップＳ１３では、記憶部１７に格納された最大温度Ｔmaxと、予め設定され、記憶部１７に記憶されている最大温度の閾値Ｔmax_judge_Threshとが比較され、最大温度Ｔmaxが異常な高温であるか否かが判定される。比較の結果、最大温度Ｔmaxが閾値Ｔmax_judge_Threshよりも大きい場合には、最大温度Ｔmaxが異常な高温であると判定し、ステップＳ１４において、充放電制御部１６の制御により充電制御ＦＥＴ１９および放電制御ＦＥＴ２０がＯＦＦとされ、二次電池１０の充放電が停止される。
【００５３】
ステップＳ１５において、最大温度位置ＮTmaxの最大温度Ｔ[ＮTmax]（＝Ｔmax）と、最大温度位置ＮTmaxに隣接する位置ＮTmax−１およびＮTmax＋１の温度Ｔ[ＮTmax−１]およびＴ[ＮTmax＋１]との温度差Ｔ[ＮTmax]−Ｔ[ＮTmax−１]およびＴ[ＮTmax]−Ｔ[ＮTmax＋１]が算出され、予め記憶部１７に記憶されている温度差の閾値ΔＴmax_judge_Threshとの比較が行われ、最大温度位置ＮTmaxの温度が隣接位置の温度と比較して異常な高温であるか否かが判定される。
【００５４】
比較の結果、温度差Ｔ[ＮTmax]−Ｔ[ＮTmax−１]が閾値ΔＴmax_judge_Threshよりも大きく、且つ、温度差Ｔ[ＮTmax]−Ｔ[ＮTmax＋１]が閾値ΔＴmax_judge_Threshよりも大きい場合には、最大温度位置ＮTmaxの温度が隣接位置の温度と比較して異常な高温であると判定され、処理がステップＳ１６に移行する。
【００５５】
ステップＳ１６では、所定時間Δｔ経過後に、最大温度位置ＮTmaxの温度Ｔ´[ＮTmax]と、最大温度位置に隣接する位置ＮTmax−１およびＮTmax＋１の温度Ｔ´[ＮTmax−１]およびＴ´[ＮTmax＋１]が測定される。
【００５６】
ステップＳ１７において、最大温度位置ＮTmaxにおける温度の時間変化率ΔＴ[ＮTmax]／Δｔ（＝（Ｔ´[ＮTmax]−Ｔ[ＮTmax]）／Δｔ）と、最大温度位置に隣接する位置ＮTmax−１およびＮTmax＋１における温度の時間変化率ΔＴ[ＮTmax−１]／Δｔ（＝（Ｔ´[ＮTmax−１]−Ｔ[ＮTmax−１]）／Δｔ）およびΔＴ[ＮTmax＋１]／Δｔ（＝（Ｔ´[ＮTmax＋１]−Ｔ[ＮTmax＋１]）／Δｔ）が算出される。
【００５７】
ステップＳ１８では、最大温度位置ＮTmaxにおける温度の時間変化率ΔＴ[ＮTmax]／Δｔと、予め記憶部１７に記憶されている最大温度位置における温度の時間変化率の閾値ΔＴmax_judge_ok_sourceとが比較され、最大温度位置に隣接する位置ＮTmax−１およびＮTmax＋１における温度の時間変化率ΔＴ[ＮTmax−１]／ΔｔおよびΔＴ[ＮTmax＋１]／Δｔと、予め記憶部１７に記憶されている最大温度位置に隣接する位置の温度の時間変化率の閾値ΔＴmax_judge_ok_otherとが比較され、温度素子が異常であるか否かが判定される。
【００５８】
比較の結果、最大温度位置ＮTmaxにおける温度の時間変化率ΔＴ[ＮTmax]／Δｔが最大温度位置における温度の時間変化率の閾値ΔＴmax_judge_ok_sourceよりも小さく、且つ、最大温度位置に隣接する位置ＮTmax−１およびＮTmax＋１における温度の時間変化率ΔＴ[ＮTmax−１]／ΔｔおよびΔＴ[ＮTmax＋１]／Δｔが最大温度位置に隣接する位置の温度の時間変化率の閾値ΔＴmax_judge_ok_otherよりもそれぞれ大きい場合には、最大温度位置ＮTmaxに設けられた温度素子が異常であると判定し、ステップＳ１９で、最大温度位置ＮTmaxが故障位置Ｎbreak_downとして記憶部１７に格納されるとともに、温度素子の故障フラグＰ[Ｎbreak_down]がセットされ、一連の処理が終了する。
【００５９】
一方、ステップＳ１３において、最大温度Ｔmaxが閾値Ｔmax_judge_Thresh以下である場合には、最大温度が正常な温度であると判定し、一連の処理が終了する。
【００６０】
また、ステップＳ１５において、温度差Ｔ[ＮTmax]−Ｔ[ＮTmax−１]およびＴ[ＮTmax]−Ｔ[ＮTmax＋１]のうち少なくともいずれか一方が閾値ΔＴmax_judge_Thresh以下である場合には、最大温度位置ＮTmaxの温度が正常であると判定され、一連の処理が終了する。
【００６１】
さらに、ステップＳ１８において、最大温度位置ＮTmaxにおける温度の時間変化率ΔＴ[ＮTmax]／Δｔが最大温度位置における温度の時間変化率の閾値ΔＴmax_judge_ok_source以上、または、最大温度位置に隣接する位置ＮTmax−１およびＮTmax＋１における温度の時間変化率ΔＴ[ＮTmax−１]／ΔｔおよびΔＴ[ＮTmax＋１]／Δｔのうち、少なくともいずれか一方が最大温度位置に隣接する位置の温度の時間変化率の閾値ΔＴmax_judge_ok_other以下である場合には、最大温度位置ＮTmaxに設けられた温度素子が正常であると判定し、一連の処理が終了する。
【００６２】
次に、温度素子が異常な低温を検出した場合の温度素子故障判定処理の流れについて、図８に示すフローチャートを参照して説明する。なお、特別な記載がない限り、以下の処理は、制御部１５の制御の下で行われるものとする。
【００６３】
ステップＳ２１では、Ｎ個の温度素子２２を用いてＮ箇所の位置の温度Ｔ[１]，Ｔ[２]、・・・、Ｔ[Ｎ]が測定され、測定された温度およびその位置情報が関連付けられて記憶部１７に格納される。ステップＳ２２では、測定された各位置の温度Ｔ[１]，Ｔ[２]、・・・、Ｔ[Ｎ]の中から、最小温度Ｔminが抽出され、最小温度Ｔminおよび最小温度位置ＮTminが記憶部１７に格納される。
【００６４】
ステップＳ２３では、記憶部１７に格納された最小温度Ｔminと、予め設定され、記憶部１７に記憶されている最小温度の閾値Ｔmin_judge_Threshとが比較され、最小温度Ｔminが異常な低温であるか否かが判定される。比較の結果、最小温度Ｔminが閾値Ｔmin_judge_Threshよりも小さい場合には、最小温度が異常な低温であると判定し、ステップＳ２４において、充放電制御部１６の制御により充電制御ＦＥＴ１９および放電制御ＦＥＴ２０がＯＦＦとされ、二次電池１０の充放電が停止される。
【００６５】
ステップＳ２５において、最小温度位置ＮTminの最小温度Ｔ[ＮTmin]（＝Ｔmin）と、最小温度位置ＮTminに隣接する位置ＮTmin−１およびＮTmin＋１の温度Ｔ[ＮTmin−１]およびＴ[ＮTmin＋１]との温度差Ｔ[ＮTmin−１]−Ｔ[ＮTmin]およびＴ[ＮTmin＋１]−Ｔ[ＮTmin]が算出され、予め記憶部１７に記憶されている温度差の閾値ΔＴmin_judge_Threshとの比較が行われ、最小温度位置ＮTminの温度が隣接位置の温度と比較して異常な低温であるか否かが判定される。
【００６６】
比較の結果、温度差Ｔ[ＮTmin−１]−Ｔ[ＮTmin]が閾値ΔＴmin_judge_Threshよりも大きく、且つ、温度差Ｔ[ＮTmin＋１]−Ｔ[ＮTmin]が閾値ΔＴmin_judge_Threshよりも大きい場合には、最小温度位置ＮTminの温度が隣接位置の温度と比較して異常な低温であると判定され、処理がステップＳ２６に移行する。
【００６７】
ステップＳ２６では、所定時間Δｔ経過後に、最小温度位置ＮTminの温度Ｔ”[ＮTmin]と、最小温度位置に隣接する位置ＮTmin−１およびＮTmin＋１の温度Ｔ”[ＮTmin−１]およびＴ”[ＮTmin＋１]が測定される。
【００６８】
ステップＳ２７において、最小温度位置ＮTminにおける温度の時間変化率ΔＴ´[ＮTmin]／Δｔ（＝（Ｔ”[ＮTmin]−Ｔ[ＮTmin]）／Δｔ）と、最小温度位置に隣接する位置ＮTmin−１およびＮTmin＋１における温度の時間変化率ΔＴ´[ＮTmin−１]／Δｔ（＝（Ｔ”[ＮTmin−１]−Ｔ[ＮTmin−１]）／Δｔ）およびΔＴ´[ＮTmin＋１]／Δｔ（＝（Ｔ”[ＮTmin＋１]−Ｔ[ＮTmin＋１]）／Δｔ）が算出される。
【００６９】
ステップＳ２８では、最小温度位置ＮTminにおける温度の時間変化率ΔＴ´[ＮTmin]／Δｔと、予め記憶部１７に記憶されている最小温度位置における温度の時間変化率の閾値ΔＴmin_judge_ok_sourceとが比較され、最小温度位置に隣接する位置ＮTmin−１およびＮTmin＋１における温度の時間変化率ΔＴ´[ＮTmin−１]／ΔｔおよびΔＴ´[ＮTmin＋１]／Δｔと、予め記憶部１７に記憶されている最小温度位置に隣接する位置の温度の時間変化率の閾値ΔＴmin_judge_ok_otherとが比較され、温度素子が異常であるか否かが判定される。
【００７０】
比較の結果、最小温度位置ＮTminにおける温度の時間変化率ΔＴ´[ＮTmin]／Δｔが最小温度位置における温度の時間変化率の閾値ΔＴmin_judge_ok_sourceよりも小さく、且つ、最小温度位置に隣接する位置ＮTmin−１およびＮTmin＋１における温度の時間変化率ΔＴ´[ＮTmin−１]／ΔｔおよびΔＴ´[ＮTmin＋１]／Δｔが最小温度位置に隣接する位置の温度の時間変化率の閾値ΔＴmin_judge_ok_otherよりもそれぞれ大きい場合には、最小温度位置ＮTminに設けられた温度素子が異常であると判定し、ステップＳ２９で、最小温度位置ＮTminが故障位置Ｎbreak_downとして記憶部１７に格納されるとともに、温度素子の故障フラグＰ[Ｎbreak_down]がセットされ、一連の処理が終了する。
【００７１】
一方、ステップＳ２３において、最小温度Ｔminが閾値Ｔmin_judge_Thresh以上である場合には、最小温度が正常な温度であると判定し、一連の処理が終了する。
【００７２】
また、ステップＳ２５において、温度差Ｔ[ＮTmin−１]−Ｔ[ＮTmin]およびＴ[ＮTmin＋１]−Ｔ[ＮTmin]のうち少なくともいずれか一方が閾値ΔＴmin_judge_Thresh以下である場合には、最小温度位置ＮTminの温度が正常であると判定され、一連の処理が終了する。
【００７３】
さらに、ステップＳ２８において、最小温度位置ＮTminにおける温度の時間変化率ΔＴ´[ＮTmin]／Δｔが最小温度位置における温度の時間変化率の閾値ΔＴmin_judge_ok_source以上、または、最小温度位置に隣接する位置ＮTmin−１およびＮTmin＋１における温度の時間変化率ΔＴ´[ＮTmin−１]／ΔｔおよびΔＴ´[ＮTmin＋１]／Δｔのうち、少なくともいずれか一方が最小温度位置に隣接する位置の温度の時間変化率の閾値ΔＴmin_judge_ok_other以下である場合には、最小温度位置ＮTminに設けられた温度素子が正常であると判定し、一連の処理が終了する。
【００７４】
（２）温度補完処理
次に、温度素子２２が故障していると判断された場合の温度補完処理について説明する。例えば、所定位置の温度を測定する温度素子２２が故障した場合、故障した温度素子２２から異常な温度が出力されてしまい、正確な温度を測定することができないが、その位置の実際の温度は、隣接する位置の温度の影響を受けていると考えられる。そこで、この発明の実施の一形態では、故障した温度素子２２の位置の温度を、隣接する位置の温度に基づき補完するようにした。
【００７５】
具体的には、例えば、最前段Ｎ1から最後段Ｎmaxまでの複数位置の温度をそれぞれ測定する温度素子２２のうち、所定位置の温度素子２２が故障した場合について考える。故障位置Ｎbreak_downが「Ｎ1＜Ｎbreak_down＜Ｎmax」である場合、故障位置Ｎbreak_downの実際の温度Ｔ[Ｎbreak_down]は、隣接する両側の位置Ｎbreak_down−１およびＮbreak_down＋１の温度Ｔ[Ｎbreak_down−１]およびＴ[Ｎbreak_down＋１]の影響を受けていると考えられる。そこで、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]を、隣接する両側の位置Ｎbreak_down−１およびＮbreak_down＋１の温度Ｔ[Ｎbreak_down−１]およびＴ[Ｎbreak_down＋１]の平均値で補完する。
【００７６】
すなわち、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]は、隣接位置Ｎbreak_down−１およびＮbreak_down＋１における温度Ｔ[Ｎbreak_down−１]およびＴ[Ｎbreak_down＋１]を用いて、数式（１）に基づき算出される。
Ｔ[Ｎbreak_down]＝（Ｔ[Ｎbreak_down−１]＋Ｔ[Ｎbreak_down＋１]）／２    ・・・（１）
【００７７】
また、故障位置Ｎbreak_downが「Ｎbreak_down＝Ｎ1」または「Ｎbreak_down＝Ｎmax」である場合、故障位置Ｎbreak_downの実際の温度Ｔ[Ｎbreak_down]は、隣接する片側の位置Ｎ2またはＮmax−１の温度Ｔ[Ｎ2]またはＴ[Ｎmax−１]の影響を受けていると考えられる。そこで、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]を、隣接する片側の位置Ｎ2またはＮmax−１の温度Ｔ[Ｎ2]またはＴ[Ｎmax−１]で補完する。
【００７８】
すなわち、故障位置Ｎbreak_downが「Ｎbreak_down＝Ｎ1」である場合、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]は、隣接位置Ｎ2における温度Ｔ[Ｎ2]を用いて、数式（２）に基づき算出される。
Ｔ[Ｎbreak_down]＝Ｔ[Ｎ2]    ・・・（２）
【００７９】
また、故障位置Ｎbreak_downが「Ｎbreak_down＝Ｎmax」である場合、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]は、隣接位置Ｎmax−１における温度Ｔ[Ｎmax−１]を用いて、数式（３）に基づき算出される。
Ｔ[Ｎbreak_down]＝Ｔ[Ｎmax−１]    ・・・（３）
【００８０】
このように、温度素子２２が故障していると判断された場合に、隣接する温度素子２２の位置の温度に基づき、故障した温度素子２２の位置の温度を補完することにより、その位置の実際の温度を推定することができる。
【００８１】
ただし、故障した温度素子２２の位置に隣接する位置の温度を測定する温度素子２２も故障している場合には、隣接する位置の温度が正確に測定されていない。そのため、隣接位置の温度に基づき、故障した温度素子２２の位置の温度を補完して温度を推定すると、推定した温度が実際の温度と大きく異なってしまうおそれがある。したがって、このような場合には補完処理を行わず、安全性を考慮して充放電を禁止する。
【００８２】
温度補完処理の流れについて、図９のフローチャートを参照して説明する。なお、特別な記載がない限り、以下の処理は、制御部１５の制御の下で行われるものとする。ステップＳ３１では、上述の温度素子故障判定処理においてセットされた故障フラグＰ[Ｎbreak_down]に基づき、故障位置Ｎbreak_downおよびその隣接位置が判別される。ここでは、故障位置Ｎbreak_downが「Ｎ1＜Ｎbreak_down＜Ｎmax」である場合と、「Ｎbreak_down＝Ｎ1」である場合と、「Ｎbreak_down＝Ｎmax」である場合とのいずれかに判別される。
【００８３】
ステップＳ３２では、故障フラグに基づき、故障位置Ｎbreak_downの隣接位置が故障しているか否かが判断される。「Ｎ1＜Ｎbreak_down＜Ｎmax」である場合には、隣接位置Ｎbreak_down−１およびＮbreak_down＋１の故障フラグＰ[Ｎbreak_down−１]およびＰ[Ｎbreak_down＋１]がセットされているか否かが判断される。
【００８４】
また、「Ｎbreak_down＝Ｎ1」である場合には、隣接位置Ｎ2の故障フラグＰ[Ｎ2]がセットされているか否かが判断される。さらに、「Ｎbreak_down＝Ｎmax」である場合には、隣接位置Ｎmax−１の故障フラグＰ[Ｎmax−１]がセットされているか否かが判断される。
【００８５】
「Ｎ1＜Ｎbreak_down＜Ｎmax」である場合において、故障フラグＰ[Ｎbreak_down−１]およびＰ[Ｎbreak_down＋１]がセットされていない場合には、隣接位置Ｎbreak_down−１およびＮbreak_down＋１の温度素子２２が故障していないと判断し、処理がステップＳ３３に移行する。
【００８６】
また、「Ｎbreak_down＝Ｎ1」である場合において、故障フラグＰ[Ｎ2]がセットされていない場合には、隣接位置Ｎ2の温度素子２２が故障していないと判断し、処理がステップＳ３３に移行する。さらに、「Ｎbreak_down＝Ｎmax」である場合において、故障フラグＰ[Ｎmax−１]がセットされていない場合には、隣接位置Ｎmax−１の温度素子２２が故障していないと判断し、処理がステップＳ３３に移行する。
【００８７】
ステップＳ３３において、隣接位置の温度に基づき、温度素子２２が故障した位置の温度が算出される。そして、温度素子２２が故障した位置の温度が算出された温度で補完され、一連の処理が終了する。「Ｎ1＜Ｎbreak_down＜Ｎmax」である場合、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]は、上述の数式（１）に基づき算出される。また、「Ｎbreak_down＝Ｎ1」である場合、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]は、数式（２）に基づき算出される。さらに、「Ｎbreak_down＝Ｎmax」である場合、故障位置Ｎbreak_downの温度Ｔ[Ｎbreak_down]は、数式（３）に基づき算出される。
【００８８】
一方、ステップＳ３２で、「Ｎ1＜Ｎbreak_down＜Ｎmax」である場合において、故障フラグＰ[Ｎbreak_down−１]またはＰ[Ｎbreak_down＋１]がセットされている場合には、隣接位置Ｎbreak_down−１およびＮbreak_down＋１のいずれかの温度素子２２が故障していると判断し、処理がステップＳ３４に移行する。
【００８９】
また、「Ｎbreak_down＝Ｎ1」である場合において、故障フラグＰ[Ｎ2]がセットされている場合には、隣接位置Ｎ2の温度素子２２が故障していると判断し、処理がステップＳ３４に移行する。さらに、Ｎbreak_down＝Ｎmax」である場合において、故障フラグＰ[Ｎmax−１]がセットされている場合には、隣接位置Ｎmax−１の温度素子２２が故障していると判断し、処理がステップＳ３４に移行する。
【００９０】
ステップＳ３４では、充放電制御部１６が制御されることにより、充電制御ＦＥＴ１９および放電制御ＦＥＴ２０をＯＦＦとして二次電池１０の充放電を禁止し、一連の処理が終了する。
【００９１】
（３）充放電停止条件変更処理
次に、二次電池１０に対する充放電停止条件の変更処理について説明する。例えば、充電の際に所定の電池セルの温度が他の電池セルの温度よりも異常な温度となり、温度差異常が検出された場合について考える。このような場合には、異常な温度となった電池セルが劣化して電池電圧が低下するため、通常の充電停止電圧まで充電を行うと、異常な温度となった電池セルが過充電状態となるおそれがある。
【００９２】
そこで、この発明の実施の一形態では、二次電池１０に対する充電停止条件の変更処理として、図１０Ａに示すように、充電停止電圧Ｖctを通常の充電停止電圧Ｖct_refと比較して低い値に設定する。こうすることにより、異常な温度となった電池セルが過充電状態となるのを防ぎ、高電圧による電池セルの劣化を抑制することができる。
【００９３】
また、図１０Ｂに示すように、充電停止電流Ｉctを通常の充電停止電流Ｉct_refと比較して低い値に設定する。こうすることにより、電流が流れることで発生する熱による電池セルの劣化を抑制することができる。
【００９４】
一方、例えば、放電の際に温度差異常が検出された場合に、通常の放電停止電圧まで放電を行うと、異常な温度となった電池セルが過放電状態となるおそれがある。そこで、この発明の実施の一形態では、放電停止条件の変更処理として、図１１Ａに示すように、放電停止電圧Ｖdtを通常の放電停止電圧Ｖdt_refと比較して高い値に設定する。こうすることにより、異常な温度となった電池セルが過放電状態となるのを防ぎ、内部抵抗の増加を抑制することができる。
【００９５】
また、図１１Ｂに示すように、放電停止電流Ｉdtを通常の放電停止電流Ｉdt_refと比較して低い値に設定する。こうすることにより、電流が流れることで発生する熱による電池セルの劣化を抑制することができる。
【００９６】
充電停止電圧Ｖct、充電停止電流Ｉct、放電停止電圧Ｖdtおよび放電停止電流Ｉdtは、例えば温度差に応じて可変とし、所定の計算を行うことにより電池セルが劣化しない程度の値に設定する。
【００９７】
先ず、充電停止電圧Ｖctおよび充電停止電流Ｉctの設定方法について説明する。例えば、温度差ΔＴが温度差異常であるか否かを判定するための閾値ΔＴThreshと、充電停止電圧Ｖctが最小の充電停止電圧Ｖct_minとなる温度差ΔＴmaxが予め設定されており、これらの閾値ΔＴThreshおよびΔＴmaxと温度差ΔＴとの関係に基づき、充電停止電圧Ｖctが設定される。
【００９８】
例えば、図１２Ａに示すように、温度差ΔＴが閾値ΔＴThresh以下である場合には、温度差異常でないと判定され、充電停止電圧Ｖctが通常の充電停止電圧Ｖct_refに設定される。すなわち、０≦ΔＴ≦ΔＴThreshの場合、充電停止電圧Ｖctは、数式（４）に基づいて算出される。
Ｖct＝Ｖct_ref    ・・・（４）
【００９９】
また、温度差ΔＴが閾値ΔＴThreshよりも大きく、ΔＴmaxよりも小さい場合、すなわち、ΔＴThresh＜ΔＴ＜ΔＴmaxである場合には、温度差異常であると判定され、充電停止電圧Ｖctが数式（５）に基づいて算出される。
Ｖct＝（Ｖct_min−Ｖct_ref）／（ΔＴmax−ΔＴThresh）×（ΔＴ−ΔＴmax）＋Ｖct_min
・・・（５）
【０１００】
さらに、温度差ΔＴがΔＴmax以上である場合には、充電停止電圧Ｖctが最小の充電停止電圧Ｖct_minに設定される。すなわち、ΔＴ≧ΔＴmaxである場合、充電停止電圧Ｖctは、数式（６）に基づいて算出される。
Ｖct＝Ｖct_min    ・・・（６）
【０１０１】
充電停止電流Ｉctについても、充電停止電圧Ｖctと同様に、閾値ΔＴThreshおよびΔＴmaxと温度差ΔＴとの関係に基づいて設定される。
【０１０２】
例えば、図１２Ｂに示すように、温度差ΔＴが閾値ΔＴThresh以下である場合には、温度差異常でないと判定され、充電停止電流Ｉctが通常の充電停止電流Ｉct_refに設定される。すなわち、０≦ΔＴ≦ΔＴThreshの場合、充電停止電流Ｉctは、数式（７）に基づいて算出される。
Ｉct＝Ｉct_ref    ・・・（７）
【０１０３】
また、温度差ΔＴが閾値ΔＴThreshよりも大きく、ΔＴmaxよりも小さい場合、すなわち、ΔＴThresh＜ΔＴ＜ΔＴmaxである場合には、温度差異常であると判定され、充電停止電流Ｉctが数式（８）に基づいて算出される。
Ｉct＝（Ｉct_min−Ｉct_ref）／（ΔＴmax−ΔＴThresh）×（ΔＴ−ΔＴmax）＋Ｉct_min
・・・（８）
【０１０４】
さらに、温度差ΔＴがΔＴmax以上である場合には、充電停止電流Ｉctが最小の充電停止電流Ｉct_minに設定される。すなわち、ΔＴ≧ΔＴmaxである場合、充電停止電流Ｉctは、数式（９）に基づいて算出される。
Ｉct＝Ｉct_min    ・・・（９）
【０１０５】
次に、放電停止電圧Ｖdtおよび放電停止電流Ｉdtの設定方法について説明する。例えば、図１３Ａに示すように、温度差ΔＴが閾値ΔＴThresh以下である場合には、温度差異常でないと判定され、放電停止電圧Ｖdtが通常の放電停止電圧Ｖdt_refに設定される。すなわち、０≦ΔＴ≦ΔＴThreshの場合、放電停止電圧Ｖdtは、数式（１０）に基づいて算出される。
Ｖdt＝Ｖdt_ref    ・・・（１０）
【０１０６】
また、温度差ΔＴが閾値ΔＴThreshよりも大きく、ΔＴmaxよりも小さい場合、すなわち、ΔＴThresh＜ΔＴ＜ΔＴmaxである場合には、温度差異常であると判定され、放電停止電圧Ｖdtが数式（１１）に基づいて算出される。
Ｖdt＝（Ｖdt_max−Ｖdt_ref）／（ΔＴmax−ΔＴThresh）×（ΔＴ−ΔＴmax）＋Ｖdt_max
・・・（１１）
【０１０７】
さらに、温度差ΔＴがΔＴmax以上である場合には、放電停止電圧Ｖdtが最大の放電停止電圧Ｖdt_maxに設定される。すなわち、ΔＴ≧ΔＴmaxである場合、放電停止電圧Ｖdtは、数式（１２）に基づいて算出される。
Ｖdt＝Ｖdt_max    ・・・（１２）
【０１０８】
放電停止電流Ｉdtについても、放電停止電圧Ｖdtと同様に、閾値ΔＴThreshおよびΔＴmaxと温度差ΔＴとの関係に基づいて設定される。
【０１０９】
例えば、図１３Ｂに示すように、温度差ΔＴが閾値ΔＴThresh以下である場合には、温度差異常でないと判定され、放電停止電流Ｉdtが通常の放電停止電流Ｉdt_refに設定される。すなわち、０≦ΔＴ≦ΔＴThreshの場合、放電停止電流Ｉdtは、数式（１３）に基づいて算出される。
Ｉdt＝Ｉdt_ref    ・・・（１３）
【０１１０】
また、温度差ΔＴが閾値ΔＴThreshよりも大きく、ΔＴmaxよりも小さい場合、すなわち、ΔＴThresh＜ΔＴ＜ΔＴmaxである場合には、温度差異常であると判定され、放電停止電流Ｉdtが数式（１４）に基づいて算出される。
Ｉdt＝（Ｉdt_min−Ｉdt_ref）／（ΔＴmax−ΔＴThresh）×（ΔＴ−ΔＴmax）＋Ｉdt_min
・・・（１４）
【０１１１】
さらに、温度差ΔＴがΔＴmax以上である場合には、放電停止電流Ｉdtが最小の放電停止電流Ｉdt_minに設定される。すなわち、ΔＴ≧ΔＴmaxである場合、放電停止電流Ｉdtは、数式（１５）に基づいて算出される。
Ｉdt＝Ｉdt_min    ・・・（１５）
【０１１２】
なお、充電停止電圧Ｖct、充電停止電流Ｉct、放電停止電圧Ｖdtおよび放電停止電流Ｉdtを算出するための数式は、上述の数式（４）〜（１５）に限らず、別の数式を用いてもよい。また、例えば、充電停止電圧Ｖct、充電停止電流Ｉct、放電停止電圧Ｖdtおよび放電停止電流Ｉdtと、温度差との関係を示すテーブルを予め用意し、算出された温度差に応じて、テーブルを参照して決定するようにしてもよい。
【０１１３】
充放電停止条件の変更処理の流れについて、図１４に示すフローチャートを参照して説明する。なお、特別な記載がない限り、以下の処理は、制御部１５の制御の下で行われるものとする。ステップＳ４１において、Ｎ個の温度素子２２を用いてＮ箇所の位置の温度Ｔ1，Ｔ2、・・・、ＴNが測定され、ステップＳ４２において、測定された各位置の温度Ｔ1，Ｔ2、・・・、ＴNの中から最大温度Ｔmaxおよび最小温度Ｔminが抽出される。
【０１１４】
ステップＳ４３では、最大温度Ｔmaxおよび最小温度Ｔminの差分によって算出される温度差ΔＴ（＝Ｔmax−Ｔmin）と、温度差ΔＴの閾値ΔＴThreshとが比較される。比較の結果、温度差ΔＴが温度差の閾値ΔＴThreshよりも大きい場合には、温度差異常であると判定し、処理がステップＳ４４に移行する。ステップＳ４４では、測定された各位置の温度Ｔ1，Ｔ2、・・・、ＴNが記憶部１７に格納される。
【０１１５】
ステップＳ４５では、例えば、上述の数式（５）および数式（６）に基づき充電停止電圧Ｖctが設定され、数式（８）および数式（９）に基づき充電停止電流Ｉctが設定される。また、ステップＳ４６では、例えば、数式（１１）および数式（１２）に基づき放電停止電圧Ｖdtが設定され、数式（１４）および数式（１５）に基づき放電停止電流Ｉdtが設定される。そして、ステップＳ４７において、温度差異常フラグがセットされ、一連の処理が終了する。
【０１１６】
一方、ステップＳ４３において、温度差ΔＴが温度差の閾値ΔＴThresh以下である場合には、温度差異常でないと判定し、処理がステップＳ４８に移行する。ステップＳ４８では、例えば、数式（４）に基づき充電停止電圧Ｖctとして通常の充電停止電圧Ｖct_refが設定され、数式（７）に基づき充電停止電流Ｉctとして通常の充電停止電流Ｉct_refが設定される。また、ステップＳ４９では、例えば、数式（１０）に基づき放電停止電圧Ｖdtとして通常の放電停止電圧Ｖdt_refが設定され、数式（１３）に基づき放電停止電流Ｉdtとして放電停止電流Ｉdt_refが設定され、一連の処理が終了する。
【０１１７】
（４）電子機器への通知処理
次に、電子機器への通知処理について説明する。例えば、温度差異常を検出した場合、電池パック１は、電子機器に対して温度差異常が発生したことを通知し、充電の際には、充電電圧および充電電流を通常の充電電圧および充電電流と比較して低くし、放電の際には、負荷を通常の負荷と比較して低負荷として放電電流を低くするように、電子機器に対して要求する。
【０１１８】
電子機器に対する温度差異常の通知処理の流れについて、図１５に示すフローチャートを参照して説明する。ステップＳ５１において、充電状態または放電状態の判定が行われる。充電状態または放電状態の判定は、例えば電流検出部１３で検出された電流の向きにより判定される。充電状態であると判定された場合には、処理がステップＳ５２に移行する。
【０１１９】
ステップＳ５２では、温度差異常フラグがセットされているか否かの判定が行われる。温度差異常フラグがセットされていると判定された場合には、処理がステップＳ５３に移行する。ステップＳ５３では、充電電圧を通常の充電電圧と比較して低い充電電圧とするように電子機器に対して要求し、ステップＳ５４において、充電電流を通常の充電電流と比較して低い充電電流とするように電子機器に対して要求し、一連の処理が終了する。
【０１２０】
また、ステップＳ５２において、温度差異常フラグがセットされていないと判定された場合には、処理がステップＳ５５に移行する。ステップＳ５５では、低充電電圧の要求を取り消して通常の充電電圧とするように、電子機器に対して要求する。そして、ステップＳ５６において、低充電電流の要求を取り消して通常の充電電流とするように電子機器に対して要求し、一連の処理が終了する。
【０１２１】
一方、ステップＳ５１において、放電状態であると判定された場合には、処理がステップＳ５７に移行する。ステップＳ５７では、温度差異常フラグがセットされているか否かの判定が行われる。温度差異常フラグがセットされていると判定された場合には、処理がステップＳ５８に移行し、ステップＳ５８において、通常の負荷と比較して低い負荷として放電電流を低くするように電子機器に対して要求し、一連の処理が終了する。
【０１２２】
また、ステップＳ５７において、温度差異常フラグがセットされていないと判定された場合には、処理がステップＳ５９に移行し、ステップＳ５９において、低負荷の要求を取り消して通常の負荷とするように、電子機器に対して要求し、一連の処理が終了する。
【０１２３】
電子機器は、上述の通知処理による電池パック１からの要求に応じて、充電の際には充電電圧および充電電流の調整を行い、放電の際には負荷の調整を行う。具体的には、例えば、充電の際には、充電電圧および充電電流を通常よりも低く設定し、放電の際には、負荷を通常よりも低く設定する。こうすることにより、電子機器に設けられている発熱部品からの発熱を抑え、電池パック１において、発熱部品に近接する部分の温度とそれ以外の部分の温度とにおける温度の不均衡を抑制するようにする。
【０１２４】
電子機器における処理の流れについて、図１６に示すフローチャートを参照して説明する。なお、特別な記載がない限り、以下の処理は電子機器に設けられた制御部の制御の下で行われるものとする。ステップＳ６１において、充電状態または放電状態の判定が行われる。充電状態であると判定された場合には、処理がステップＳ６２に移行する。
【０１２５】
ステップＳ６２では、電池パック１から通常の充電電圧と比較して低充電電圧が要求されたか否かが判定される。低充電電圧が要求されていると判定された場合には、処理がステップＳ６３に移行し、ステップＳ６３において、充電電圧が通常の充電電圧と比較して低充電電圧に設定される。
【０１２６】
一方、ステップＳ６２において、低充電電圧が要求されていないと判定された場合には、処理がステップＳ６４に移行し、ステップＳ６４において、充電電圧が通常の充電電圧に設定される。
【０１２７】
ステップＳ６５では、電池パック１から通常の充電電流と比較して低充電電流が要求されたか否かが判定される。低充電電流が要求されていると判定された場合には、処理がステップＳ６６に移行し、ステップＳ６６において、充電電流が通常の充電電流と比較して低充電電流に設定され、一連の処理が終了する。
【０１２８】
また、ステップＳ６５において、低充電電流が要求されていないと判定された場合には、処理がステップＳ６７に移行し、ステップＳ６７において、充電電流が通常の充電電流に設定され、一連の処理が終了する。
【０１２９】
一方、ステップＳ６１において、放電状態であると判定された場合には、処理がステップＳ６８に移行する。ステップＳ６８では、電池パック１から通常の負荷と比較して低負荷が要求されたか否かが判定される。低負荷が要求されていると判定された場合には、処理がステップＳ６９に移行し、ステップＳ６９において、負荷が通常の負荷と比較して低負荷に設定され、一連の処理が終了する。
【０１３０】
また、ステップＳ６８において、低負荷が要求されていないと判定された場合には、処理がステップＳ７０に移行し、ステップＳ７０において、負荷が通常の負荷に設定され、一連の処理が終了する。
【０１３１】
このように、この発明の実施の一形態では、温度差に応じて二次電池１０に対する充放電停止条件を変更することにより、劣化しているおそれがある電池セルが過充電状態や過放電状態となるのを防ぎ、電池セルに対する適切な充放電を行うことで電池セルの劣化を抑制することができる。
【０１３２】
また、温度差異常を検出した場合に、温度差の原因が温度素子の故障によるものであるか否かを判断するようにしているため、実際に温度差異常が発生しているか否かを検出することができる。
【０１３３】
さらにまた、電池パック１から電子機器に対して温度差異常が生じていること通知し、電池パック１からの要求に応じて、電子機器において充電電圧、充電電流および負荷を調整することにより、電子機器における発熱を抑制し、電池パック１内の温度の不均衡を抑制することができる。
【０１３４】
以上、この発明の実施の一形態について説明したが、この発明は、上述したこの発明の実施の一形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。この例では、温度素子２２を各電池セルの付近にそれぞれ設けるように説明したが、これはこの例に限られず、例えば、コストや電池パック１の構成に応じてセルブロック毎に１つの温度素子２２を設けるようにしてもよい。
【０１３５】
また、例えば、電池パックから電子機器に対して温度差異常を通知した際に、電子機器は、充電電圧、充電電流および負荷の調整を行うだけでなく、温度差異常が発生したことをユーザに通知し、使用環境の改善を促すようにしてもよい。
【図面の簡単な説明】
【０１３６】
【図１】この発明の実施の一形態による電池パックの一例の構成を示すブロック図である。
【図２】二次電池および温度検出部の一例の構成を示すブロック図である。
【図３】この発明の実施の一形態による電池パックにおける各種処理の流れを説明するためのフローチャートである。
【図４】二次電池の一例の構成を示す略線図である。
【図５】セルブロックの温度変化を説明するための略線図である。
【図６】セルブロックの温度変化を説明するための略線図である。
【図７】温度素子が異常な高温である場合の温度素子故障判定処理の流れを説明するためのフローチャートである。
【図８】温度素子が異常な低温である場合の温度素子故障判定処理の流れを説明するためのフローチャートである。
【図９】温度補完処理の流れを説明するためのフローチャートである。
【図１０】充電停止電圧および充電停止電流の設定方法について説明するための略線図である。
【図１１】放電停止電圧および放電停止電流の設定方法について説明するための略線図である。
【図１２】充電停止電圧および充電停止電流の設定方法について説明するための略線図である。
【図１３】放電停止電圧および放電停止電流の設定方法について説明するための略線図である。
【図１４】充放電停止条件の変更処理の流れを説明するためのフローチャートである。
【図１５】電子機器に対する温度差異常の通知処理の流れを説明するためのフローチャートである。
【図１６】電子機器における処理の流れを説明するためのフローチャートである。
【符号の説明】
【０１３７】
１  電池パック
２  充電器
３  負荷
４  正極端子
５  負極端子
６ａ、６ｂ  通信端子
１０  二次電池
１１  温度検出部
１２  電圧検出部
１３  電流検出部
１４  スイッチ回路
１５  制御部
１６  充放電制御部
１７  記憶部
１８  電流検出抵抗
１９  充電制御ＦＥＴ
１９ａ  寄生ダイオード
２０  放電制御ＦＥＴ
２０ａ  寄生ダイオード
２１ａ、２１ｂ、２１ｃ、２１ｄ、２１ｅ、２１ｆ  電池セル
２２ａ、２２ｂ、２２ｃ、２２ｄ、２２ｅ、２２ｆ  温度素子
２３  結線切替スイッチ
【図１】
2009059504.tif 000003
【図２】
2009059504.tif 000004
【図３】
2009059504.tif 000005
【図４】
2009059504.tif 000006
【図５】
2009059504.tif 000007
【図６】
2009059504.tif 000008
【図７】
2009059504.tif 000009
【図８】
2009059504.tif 000010
【図９】
2009059504.tif 000011
【図１０】
2009059504.tif 000012
【図１１】
2009059504.tif 000013
【図１２】
2009059504.tif 000014
【図１３】
2009059504.tif 000015
【図１４】
2009059504.tif 000016
【図１５】
2009059504.tif 000017
【図１６】
2009059504.tif 000018