(57)【特許請求の範囲】
【請求項１】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
前記複数の二次電池のすべてとそれぞれ直列に接続される複数のスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された各直列回路間を並列に接続する接続部とを備え、
前記個別抵抗算出部は、前記複数のスイッチング素子のうち１つをオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を、前記オンされたスイッチング素子と直列に接続された二次電池の内部抵抗値として取得した後、オンされたスイッチング素子を除く残余のスイッチング素子を順次オンさせる設定状態とし、前記順次オンさせる都度、前記順次オンさせる直前に前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オンされた状態で前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オンされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出する内部抵抗検出回路。
【請求項２】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
前記複数の二次電池のうち一つを除く残余の二次電池に、それぞれ直列に接続されるスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された各直列回路と前記スイッチング素子が接続されない一つの二次電池である基本二次電池とを並列に接続する接続部とを備え、
前記個別抵抗算出部は、すべての前記スイッチング素子をオフさせた設定状態において前記抵抗算出部によって算出させた抵抗値を前記基本二次電池の内部抵抗値として取得した後、前記スイッチング素子を順次オンさせる設定状態とし、前記順次オンさせる都度、前記順次オンさせる直前に前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オンされた状態で前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オンされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出する内部抵抗検出回路。
【請求項３】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
前記複数の二次電池のすべてとそれぞれ直列に接続される複数のスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された各直列回路間を並列に接続する接続部とを備え、
前記個別抵抗算出部は、前記複数のスイッチング素子をオンさせた設定状態において前記抵抗算出部によって抵抗値を算出させた後、前記複数のスイッチング素子を１つずつ順次オフさせる設定状態とし、前記順次オフさせる都度、前記順次オフされた状態で前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オフさせる直前に前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オフされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出する内部抵抗検出回路。
【請求項４】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
前記複数の二次電池のうち一つを除く残余の二次電池に、それぞれ直列に接続されるスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された各直列回路と前記スイッチング素子が接続されない一つの二次電池である基本二次電池とを並列に接続する接続部とを備え、
前記個別抵抗算出部は、すべての前記スイッチング素子をオンさせた設定状態において前記抵抗算出部によって抵抗値を算出させた後、前記複数のスイッチング素子を１つずつ順次オフさせる設定状態とし、前記順次オフさせる都度、前記順次オフされた状態で前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オフさせる直前に前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オフされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出する内部抵抗検出回路。
【請求項５】
前記記憶部は、
前記二次電池が放電している状態における充電状態及び温度と前記二次電池の内部抵抗値とを対応付ける放電用情報と、
前記二次電池が充電されている状態における充電状態及び温度と前記二次電池の内部抵抗値とを対応付ける充電用情報とを予め記憶し、
前記倍率算出部は、
前記二次電池が放電している期間に前記電流検出部により検出された電流及び前記電圧検出部により検出された電圧に基づいて、前記個別抵抗算出部による抵抗値の算出が行われたとき、前記倍率算出部は、前記倍率を放電倍率として算出し、
前記二次電池が充電されている期間に前記電流検出部により検出された電流及び前記電圧検出部により検出された電圧に基づいて、前記個別抵抗算出部による抵抗値の算出が行われたとき、前記倍率算出部は、前記倍率を充電倍率として算出し、
前記内部抵抗値取得部は、
前記二次電池が放電している期間に前記二次電池の内部抵抗値を取得する場合、前記記憶部に記憶されている前記放電用情報によって前記充電状態と前記温度とに対応付けられている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得し、
前記二次電池が充電されている期間に前記二次電池の内部抵抗値を取得する場合、前記記憶部に記憶されている前記充電用情報によって前記充電状態と前記温度とに対応付けられている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する請求項１〜４のいずれか１項に記載の内部抵抗検出回路。
【請求項６】
前記個別抵抗算出部は、前記設定状態における前記スイッチング素子のオン、オフ状態を変化させつつ前記複数の二次電池の内部抵抗値を順次算出すると共に、前記複数の二次電池がすべて並列接続された状態の前記電池モジュールの抵抗値を全体抵抗値として算出し、
前記個別抵抗算出部によって算出された、前記各内部抵抗値と前記全体抵抗値との比率と、前記全体電流とに基づいて、前記各二次電池に流れる電流の電流値を算出する個別電流算出部をさらに備える請求項１〜４のいずれか１項に記載の内部抵抗検出回路。
【請求項７】
前記個別抵抗算出部は、前記設定状態における前記スイッチング素子のオン、オフ状態を変化させつつ、前記複数の二次電池の内部抵抗値を順次算出し、
前記電池モジュールに含まれる二次電池の数をｎとし、前記各二次電池に１〜ｎの番号を付与し、ｍ番の二次電池について前記個別抵抗算出部によって算出された内部抵抗値をｒ（ｍ）とし、内部抵抗値ｒ（１）〜ｒ（ｎ）の比率がｐ（１）：ｐ（２）：・・・：ｐ（ｎ）であり、ｍ番目の二次電池が流すことができる電流の上限値がＩｌｉｍ（ｍ）であるとき、前記全体電流の許容できる上限値である全体制限値Ｉｌｉｍ＿ｔｏｔａｌを、下記の式（Ｃ）を用いて算出する全体制限値算出部とをさらに備える請求項１〜４のいずれか１項に記載の内部抵抗検出回路。
【数２】
0005857229.tif 000008
【請求項８】
前記個別抵抗算出部は、前記設定状態における前記スイッチング素子のオン、オフ状態を変化させつつ前記複数の二次電池の内部抵抗値を順次算出すると共に、前記複数の二次電池がすべて並列接続された状態の前記電池モジュールの抵抗値を全体抵抗値として算出し、
前記電池モジュールに含まれる二次電池の数をｎとし、前記各二次電池に１〜ｎの番号を付与し、ｍ番の二次電池について前記個別抵抗算出部によって算出された内部抵抗値をｒ（ｍ）とし、前記全体抵抗値をＲｔｏｔａｌとし、Ｒｔｏｔａｌとｒ（ｍ）との比率をＰｔｏｔａｌ：Ｐ（ｍ）とし、ｍ番目の二次電池が流すことができる電流の上限値がＩｌｉｍ（ｍ）であるとき、前記全体電流の許容できる上限値である全体制限値Ｉｌｉｍ＿ｔｏｔａｌを、下記の式（Ｄ）を用いて算出する全体制限値算出部をさらに備える請求項１〜４のいずれか１項に記載の内部抵抗検出回路。
【数３】
0005857229.tif 000009
【請求項９】
前記個別抵抗算出部は、前記第１部分抵抗値がＲｓ、前記第２部分抵抗値がＲｐであるとき、下記の式（Ｈ）に基づき前記対象二次電池の内部抵抗値ｒを算出する請求項１〜４のいずれか１項に記載の内部抵抗検出回路。
ｒ＝（Ｒｓ×Ｒｐ）／（Ｒｓ−Ｒｐ）  ・・・（Ｈ）
【請求項１０】
前記抵抗算出部は、
前記電流検出部と前記電圧検出部とによって、同期したタイミングで検出された前記全体電流と前記全体電圧との組を複数取得し、この複数の組から得られる回帰直線の傾きを前記電池モジュールの抵抗値として算出する請求項１〜４のいずれか１項に記載の内部抵抗検出回路。
【請求項１１】
前記電池モジュールから負荷への電流供給を制御する放電制御部をさらに備え、
前記抵抗算出部は、前記放電制御部が前記電流供給量を変化させたとき、前記電流供給量の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出する請求項１〜４のいずれか１項に記載の内部抵抗検出回路。
【請求項１２】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
少なくとも、前記複数の二次電池のうち前記電池モジュールに含まれる二次電池の数より一つ少ない数の二次電池に対して、直列に接続された一又は複数のスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された各直列回路間、又は、前記スイッチング素子が接続されない二次電池及び前記各直列回路間、のうちいずれか一方を並列に接続することによって、前記複数の二次電池と前記一又は複数のスイッチング素子とを含む前記電池モジュールを構成する接続部と、
前記電池モジュールから負荷への電流供給経路を開閉するスイッチング部と、
前記スイッチング部と並列に接続され、電流を遮断する遮断状態と、前記複数の二次電池における１つの二次電池が流すことができる予め設定された電流の上限値を超えない範囲に流れる電流を制限する制限状態とに切り替え可能にされた電流制限部と、
前記複数の二次電池のうち、内部抵抗値を検出しようとする検出対象の二次電池である対象二次電池に接続されたスイッチング素子をオンさせ、かつ前記対象二次電池以外の二次電池に接続されたスイッチング素子をオフさせた設定状態において前記電流制限部を前記遮断状態から前記制限状態に切り替えることによって前記負荷への電流供給を開始する放電制御部をさらに備え、
前記抵抗算出部は、前記放電制御部が前記電流供給を開始させたとき、前記電流供給量の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、
前記個別抵抗算出部は、前記設定状態において前記抵抗算出部によって算出させた抵抗値を、前記対象二次電池の内部抵抗値として取得し、
前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、
前記放電制御部は、前記複数のスイッチング素子がオンされた後に前記スイッチング部により前記電流供給経路を閉じさせる内部抵抗検出回路。
【請求項１３】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
前記複数の二次電池のすべてとそれぞれ直列に接続された複数のスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された複数の直列回路すべてを並列に接続する接続部と、
前記電池モジュールから負荷への電流供給経路を開閉するスイッチング部と、
前記スイッチング部と並列に接続され、電流を遮断する遮断状態と、前記電池モジュールに含まれる二次電池の数より１少ない数と前記複数の二次電池における１つの二次電池が流すことができる予め設定された電流の上限値との乗算値を超えない範囲に流れる電流を制限する制限状態とに切り替え可能にされた電流制限部とを備え、
前記個別抵抗算出部は、すべての前記スイッチング素子をオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を全体抵抗値として取得し、前記対象二次電池に接続されたスイッチング素子をオフさせ、かつ前記対象二次電池以外の二次電池に接続されたスイッチング素子をオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を部分抵抗値として取得し、前記全体抵抗値と前記部分抵抗値とに基づいて、前記対象二次電池の内部抵抗値を算出し、
前記内部抵抗検出回路は、前記設定状態において前記電流制限部を前記遮断状態から前記制限状態に切り替えることによって前記負荷への電流供給を開始する放電制御部をさらに備え、
前記抵抗算出部は、前記放電制御部が前記電流供給を開始させたとき、前記電流供給量の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、
前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、
前記放電制御部は、前記複数のスイッチング素子がオンされた後に前記スイッチング部により前記電流供給経路を閉じさせる内部抵抗検出回路。
【請求項１４】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
少なくとも、前記複数の二次電池のうち前記電池モジュールに含まれる二次電池の数より一つ少ない数の二次電池に対して、直列に接続された一又は複数のスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された各直列回路間、又は、前記スイッチング素子が接続されない二次電池及び前記各直列回路間、のうちいずれか一方を並列に接続することによって、前記複数の二次電池と前記一又は複数のスイッチング素子とを含む前記電池モジュールを構成する接続部と、
前記電池モジュールを充電する充電電流を制御する充電制御部とを備え、
前記個別抵抗算出部は、前記複数の二次電池のうち、内部抵抗値を検出しようとする検出対象の二次電池である対象二次電池に接続されたスイッチング素子をオンさせ、前記対象二次電池以外の二次電池に接続されたスイッチング素子をオフさせた設定状態において前記抵抗算出部によって算出させた抵抗値を、前記対象二次電池の内部抵抗値として取得し、
前記充電制御部は、前記設定状態において、前記複数の二次電池における１つの二次電池の充電電流の上限値である予め設定された充電上限値を超えない範囲で前記充電電流を変化させ、
前記抵抗算出部は、前記設定状態における前記充電電流の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、
前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、
前記充電制御部は、前記複数のスイッチング素子がオンされた後に前記充電電流を前記上限値を超えて増大させる内部抵抗検出回路。
【請求項１５】
二次電池が複数、並列に接続されて構成される電池モジュールに流れる電流である全体電流を検出する電流検出部と、
前記電池モジュールの両端間の電圧である全体電圧を検出する電圧検出部と、
前記二次電池の温度を検出する温度検出部と、
前記二次電池の充電状態を検出する充電状態検出部と、
前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、
前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、
前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、
前記個別抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部と、
前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、
前記複数の二次電池のすべてとそれぞれ直列に接続された複数のスイッチング素子と、
前記二次電池と前記スイッチング素子とが直列に接続されて構成された複数の直列回路すべてを並列に接続する接続部と、
前記電池モジュールを充電する充電電流を制御する充電制御部とを備え、
前記個別抵抗算出部は、すべての前記スイッチング素子をオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を全体抵抗値として取得し、前記複数の二次電池のうち、内部抵抗値を検出しようとする検出対象の二次電池である対象二次電池に接続されたスイッチング素子をオフさせ、かつ前記対象二次電池以外の二次電池に接続されたスイッチング素子をオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を部分抵抗値として取得し、前記全体抵抗値と前記部分抵抗値とに基づいて、前記対象二次電池の内部抵抗値を算出し、
前記充電制御部は、前記設定状態において、前記電池モジュールに含まれる二次電池の数より１少ない数と前記複数の二次電池における１つの二次電池の充電電流の上限値である予め設定された充電上限値との乗算値を超えない範囲で前記充電電流を変化させ、
前記抵抗算出部は、前記設定状態における前記充電電流の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、
前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、
前記充電制御部は、前記複数のスイッチング素子がオンされた後に前記充電電流を増大させる内部抵抗検出回路。
【請求項１６】
請求項１〜１５のいずれか１項に記載の内部抵抗検出回路と、
前記二次電池とを備える電池電源装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、二次電池の内部抵抗値を検出する内部抵抗検出回路、及びこれを用いる電池電源装置に関する。
【背景技術】
【０００２】
従来より、二次電池を用いて負荷回路へ電力を供給する電池電源装置においては、負荷回路が必要とする出力電流量を確保する必要から、複数の二次電池を並列接続した電池ブロックが広く用いられている。
【０００３】
また、二次電池の劣化の程度を判断するために、二次電池の内部抵抗を測定する技術が知られている（例えば、特許文献１参照）。特許文献１に記載の技術は、二次電池と直列に接続された電流センサと、二次電池の端子電圧を測定する電圧センサとを備え、電流センサで検出された電流値と、電圧センサで検出された電圧値とから、二次電池の内部抵抗を算出するようになっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−３１１７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、二次電池の内部抵抗値は、温度の影響を受けて変化するため、二次電池から検出された電流値と電圧値とから内部抵抗値を求めると、温度の影響によって内部抵抗値の検出精度が低下するという不都合があった。また、本発明の発明者らは、二次電池の充電状態（ＳＯＣ：State Of Charge）によっても、二次電池の内部抵抗値が変化することを見出した。
【０００６】
本発明の目的は、二次電池の内部抵抗値の検出精度を向上することができる内部抵抗検出回路、及びこれを用いた電池電源装置を提供することである。
【課題を解決するための手段】
【０００７】
本発明に係る内部抵抗検出回路は、二次電池に流れる電流を検出する電流検出部と、前記二次電池の電圧を検出する電圧検出部と、前記二次電池の温度を検出する温度検出部と、前記二次電池の充電状態を検出する充電状態検出部と、前記電流検出部により検出された電流と前記電圧検出部により検出された電圧とに基づいて、前記二次電池の抵抗値を算出する個別抵抗算出部と、前記二次電池の充電状態及び温度と、前記二次電池の内部抵抗値とを対応付けて予め記憶する記憶部と、前記個別抵抗算出部によって前記抵抗値が算出された前記二次電池の充電状態と温度とに対応して前記記憶部に記憶されている内部抵抗値と、前記個別抵抗算出部によって算出された抵抗値との比を倍率として算出する倍率算出部と、前記抵抗算出部によって前記抵抗値が算出された後に前記充電状態検出部によって検出された充電状態と前記温度検出部によって検出された温度と、に対応付けて前記記憶部に記憶されている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得する内部抵抗値取得部とを備える。
【０００８】
この構成によれば、二次電池に流れる電流と二次電池の電圧とから算出された抵抗値と、二次電池の充電状態と温度とに基づいて、二次電池の内部抵抗値が求められるので、二次電池の充電状態と温度の影響が反映されて内部抵抗値が求められることになる。その結果、二次電池の内部抵抗値の検出精度を向上することができる。
【０００９】
また、前記記憶部は、前記二次電池が放電している状態における充電状態及び温度と前記二次電池の内部抵抗値とを対応付ける放電用情報と、前記二次電池が充電されている状態における充電状態及び温度と前記二次電池の内部抵抗値とを対応付ける充電用情報とを予め記憶し、前記倍率算出部は、前記二次電池が放電している期間に前記電流検出部により検出された電流及び前記電圧検出部により検出された電圧に基づいて、前記個別抵抗算出部による抵抗値の算出が行われたとき、前記倍率算出部は、前記倍率を放電倍率として算出し、前記二次電池が充電されている期間に前記電流検出部により検出された電流及び前記電圧検出部により検出された電圧に基づいて、前記個別抵抗算出部による抵抗値の算出が行われたとき、前記倍率算出部は、前記倍率を充電倍率として算出し、前記内部抵抗値取得部は、前記二次電池が放電している期間に前記二次電池の内部抵抗値を取得する場合、前記記憶部に記憶されている前記放電用情報によって前記充電状態と前記温度とに対応付けられている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得し、前記二次電池が充電されている期間に前記二次電池の内部抵抗値を取得する場合、前記記憶部に記憶されている前記充電用情報によって前記充電状態と前記温度とに対応付けられている内部抵抗値に、前記倍率を乗算することにより得られた乗算値を、前記二次電池の内部抵抗値として取得することが好ましい。
【００１０】
この構成によれば、二次電池の充電状態と温度の影響に加えて、二次電池が放電中であるか充電中であるかによって生じる内部抵抗値の変化が反映されて内部抵抗値が求められることになる。その結果、二次電池の内部抵抗値の検出精度をさらに向上することができる。
【００１１】
また、前記二次電池が複数、並列に接続されて電池モジュールが構成され、前記電流検出部は、前記電池モジュールに流れる電流である全体電流を検出し、前記電圧検出部は、前記電池モジュールの両端間の電圧である全体電圧を検出し、前記内部抵抗検出回路は、前記全体電流と前記全体電圧とに基づいて、前記電池モジュールの抵抗値を算出する抵抗算出部と、少なくとも、前記複数の二次電池のうち前記電池モジュールに含まれる二次電池の数より一つ少ない数の二次電池に対して、直列に接続された一又は複数のスイッチング素子と、前記二次電池と前記スイッチング素子とが直列に接続されて構成された各直列回路間、又は、前記スイッチング素子が接続されない二次電池及び前記各直列回路間、のうちいずれか一方を並列に接続することによって、前記複数の二次電池と前記一又は複数のスイッチング素子とを含む前記電池モジュールを構成する接続部とをさらに備え、前記個別抵抗算出部は、前記スイッチング素子のオン、オフを所定の状態にさせた設定状態において前記抵抗算出部によって算出された抵抗値に基づいて、前記複数の二次電池のうち少なくとも一つの内部抵抗値を算出することが好ましい。
【００１２】
この構成によれば、電流検出部により検出された全体電流と電圧検出部によって検出された全体電圧とに基づいて、抵抗算出部によって、電池モジュールの抵抗値が算出される。また、個別抵抗算出部によって、スイッチング素子のオン、オフが所定の状態にされる。そうすると、電池モジュールの抵抗値には、スイッチング素子のオン、オフに応じて選択された二次電池の内部抵抗値が反映される。そこで、個別抵抗算出部は、スイッチング素子のオン、オフが所定の状態にされた状態において抵抗算出部によって算出された抵抗値に基づいて、複数の二次電池のうち少なくとも一つの内部抵抗値を算出することができる。この場合、二次電池の内部抵抗値を検出するために必要となる電流検出部の数は一つでよいから、電流検出部の数を並列接続された二次電池の数より少なくすることができる。
【００１３】
また、前記個別抵抗算出部は、前記設定状態における前記スイッチング素子のオン、オフ状態を変化させつつ、前記複数の二次電池の内部抵抗値を順次算出し、前記個別抵抗算出部によって算出された前記複数の内部抵抗値と、前記全体電流とに基づいて、前記各二次電池を流れる電流を算出する個別電流算出部をさらに備えることが好ましい。
【００１４】
この構成によれば、個別抵抗算出部は、スイッチング素子のオン、オフ状態を変化させることによって、複数の二次電池の内部抵抗値を順次算出する。電池モジュールに流れる全体電流は、各二次電池の内部抵抗値に応じて分流する。従って、個別電流算出部は、各二次電池の内部抵抗値と、電流検出部によって検出された全体電流とに基づいて、各二次電池を流れる電流を算出することができる。その結果、電流検出部を一つ設けるだけで、複数の二次電池に流れる各電流値を検出することができる。
【００１５】
また、前記個別電流算出部は、前記電池モジュールに含まれる二次電池の数をｎとし、前記各二次電池に１〜ｎの番号を付与し、ｍ番（ｍは１〜ｎのうちいずれかの番号）の二次電池について前記個別抵抗算出部によって算出された内部抵抗値をｒ（ｍ）とし、前記全体電流をＩとし、下記の式（Ａ）を用いてｍ番の二次電池に流れる電流の電流値Ｉ（ｍ）を算出することが好ましい。
【００１６】
【数１】
0005857229.tif 000002
【００１７】
この構成によれば、各二次電池の内部抵抗値と、電流検出部によって検出された全体電流とに基づいて、各二次電池を流れる電流を算出することができる。
【００１８】
また、前記個別抵抗算出部は、前記設定状態における前記スイッチング素子のオン、オフ状態を変化させつつ前記複数の二次電池の内部抵抗値を順次算出すると共に、前記複数の二次電池がすべて並列接続された状態の前記電池モジュールの抵抗値を全体抵抗値として算出し、前記個別抵抗算出部によって算出された、前記各内部抵抗値と前記全体抵抗値との比率と、前記全体電流とに基づいて、前記各二次電池に流れる電流の電流値を算出する個別電流算出部をさらに備えることが好ましい。
【００１９】
この構成によれば、個別抵抗算出部は、スイッチング素子のオン、オフ状態を変化させることによって、複数の二次電池の内部抵抗値を順次算出する。電池モジュールに流れる全体電流は、各二次電池の内部抵抗値と、複数の二次電池の並列回路である電池モジュールの全体抵抗値との比率に応じて各二次電池に分配される。従って、個別電流算出部は、各内部抵抗値と全体抵抗値との比率と、全体電流とに基づいて、各二次電池に流れる電流の電流値を算出することができる。その結果、電流検出部を一つ設けるだけで、複数の二次電池に流れる各電流値を検出することができる。
【００２０】
また、前記個別電流算出部は、前記電池モジュールに含まれる二次電池の数をｎとし、前記各二次電池に１〜ｎの番号を付与し、ｍ番の二次電池について前記個別抵抗算出部によって算出された内部抵抗値をｒ（ｍ）とし、前記全体抵抗値をＲｔｏｔａｌとし、前記全体電流をＩとし、下記の式（Ｂ）を用いてｍ番の二次電池に流れる電流の電流値Ｉ（ｍ）を算出することが好ましい。
【００２１】
Ｉ（ｍ）＝｛Ｒｔｏｔａｌ／ｒ（ｍ）｝×Ｉ  ・・・（Ｂ）
この構成によれば、個別電流算出部は、各内部抵抗値と全体抵抗値との比率である｛Ｒｔｏｔａｌ／ｒ（ｍ）｝と、全体電流Iとに基づいて、各二次電池に流れる電流の電流値Ｉ（ｍ）を算出することができる。
【００２２】
また、前記個別抵抗算出部は、前記設定状態における前記スイッチング素子のオン、オフ状態を変化させつつ、前記複数の二次電池の内部抵抗値を順次算出し、前記電池モジュールに含まれる二次電池の数をｎとし、前記各二次電池に１〜ｎの番号を付与し、ｍ番の二次電池について前記個別抵抗算出部によって算出された内部抵抗値をｒ（ｍ）とし、内部抵抗値ｒ（１）〜ｒ（ｎ）の比率がｐ（１）：ｐ（２）：・・・：ｐ（ｎ）であり、ｍ番目の二次電池が流すことができる電流の上限値がＩｌｉｍ（ｍ）であるとき、前記全体電流の許容できる上限値である全体制限値Ｉｌｉｍ＿ｔｏｔａｌを、下記の式（Ｃ）を用いて算出する全体制限値算出部とをさらに備えてもよい。
【００２３】
【数２】
0005857229.tif 000003
【００２４】
この構成によれば、式（Ｃ）を用いることによって、個別抵抗算出部によって算出された内部抵抗値ｒ（１）〜ｒ（ｎ）と、一つの二次電池が流すことができる電流の上限値とに基づいて、全体制限値算出部は、全体電流の許容できる上限値である全体制限値Ｉｌｉｍ＿ｔｏｔａｌを算出することができる。
【００２５】
また、前記個別抵抗算出部は、前記設定状態における前記スイッチング素子のオン、オフ状態を変化させつつ前記複数の二次電池の内部抵抗値を順次算出すると共に、前記複数の二次電池がすべて並列接続された状態の前記電池モジュールの抵抗値を全体抵抗値として算出し、前記電池モジュールに含まれる二次電池の数をｎとし、前記各二次電池に１〜ｎの番号を付与し、ｍ番の二次電池について前記個別抵抗算出部によって算出された内部抵抗値をｒ（ｍ）とし、前記全体抵抗値をＲｔｏｔａｌとし、Ｒｔｏｔａｌとｒ（ｍ）との比率をＰｔｏｔａｌ：Ｐ（ｍ）とし、ｍ番目の二次電池が流すことができる電流の上限値がＩｌｉｍ（ｍ）であるとき、前記全体電流の許容できる上限値である全体制限値Ｉｌｉｍ＿ｔｏｔａｌを、下記の式（Ｄ）を用いて算出する全体制限値算出部をさらに備えることが好ましい。
【００２６】
【数３】
0005857229.tif 000004
【００２７】
この構成によれば、式（Ｄ）を用いることによって、個別抵抗算出部によって算出された内部抵抗値ｒ（１）〜ｒ（ｎ）及び全体抵抗値をＲｔｏｔａｌと、二次電池が流すことができる電流の上限値とに基づいて、全体制限値算出部は、全体電流の許容できる上限値である全体制限値Ｉｌｉｍ＿ｔｏｔａｌを算出することができる。
【００２８】
また、前記個別抵抗算出部は、前記複数の二次電池のうち、内部抵抗値を検出しようとする検出対象の二次電池である対象二次電池に接続されたスイッチング素子のオン、オフ状態と、前記対象二次電池以外の二次電池に接続された一又は複数のスイッチング素子のオン、オフ状態とを互いに異ならせた設定状態において前記抵抗算出部によって算出された抵抗値に基づいて、前記対象二次電池の内部抵抗値を算出することが好ましい。
【００２９】
この構成によれば、対象二次電池に接続されたスイッチング素子をオンさせ、かつ他の二次電池に接続されたスイッチング素子をオフさせるか、あるいは対象二次電池に接続されたスイッチング素子をオフさせ、かつ他の二次電池に接続されたスイッチング素子をオンさせるか、いずれかの設定状態において抵抗算出部によって算出された電池モジュールの抵抗値に基づいて、個別抵抗算出部は、対象二次電池の内部抵抗値を算出する。
【００３０】
また、前記スイッチング素子は複数設けられ、前記複数のスイッチング素子は前記複数の二次電池のすべてとそれぞれ直列に接続され、前記接続部は、すべての前記直列回路を並列に接続し、前記個別抵抗算出部は、前記対象二次電池に接続されたスイッチング素子をオンさせ、かつ前記対象二次電池以外の二次電池に接続されたスイッチング素子をオフさせた設定状態において前記抵抗算出部によって算出させた抵抗値を、前記対象二次電池の内部抵抗値として取得することが好ましい。
【００３１】
この構成によれば、対象二次電池に接続されたスイッチング素子をオンさせ、かつ対象二次電池以外の二次電池に接続されたスイッチング素子をオフさせた設定状態においては、電池モジュールの抵抗値は対象二次電池の内部抵抗に等しい。従って、個別抵抗算出部は、対象二次電池に接続されたスイッチング素子をオンさせ、かつ対象二次電池以外の二次電池に接続されたスイッチング素子をオフさせた設定状態において抵抗算出部によって算出させた抵抗値を、対象二次電池の内部抵抗値として取得することによって、対象二次電池の内部抵抗値を求めることができる。
【００３２】
また、前記スイッチング素子は、前記複数の二次電池のうち一つを除く残余の二次電池に、それぞれ直列に接続され、前記接続部は、すべての前記直列回路と前記一つの二次電池である基本二次電池とを並列に接続し、前記個別抵抗算出部は、すべての前記スイッチング素子をオフさせた設定状態において前記抵抗算出部によって算出させた抵抗値を前記基本二次電池の内部抵抗値として取得し、前記対象二次電池に接続されたスイッチング素子をオンさせ、かつ前記対象二次電池以外の二次電池に接続されたスイッチング素子をオフさせた設定状態において前記抵抗算出部によって算出させた抵抗値を部分抵抗値として取得し、前記基本二次電池の内部抵抗値と前記部分抵抗値とに基づいて、前記対象二次電池の内部抵抗値を算出することが好ましい。
【００３３】
この構成によれば、対象二次電池に接続されたスイッチング素子をオンさせ、かつ対象二次電池以外の二次電池に接続されたスイッチング素子をオフさせた設定状態において抵抗算出部によって算出された部分抵抗値は、対象二次電池の内部抵抗値と基本二次電池の内部抵抗値との合成抵抗値となる。従って、個別抵抗算出部は、基本二次電池の内部抵抗値と部分抵抗値とに基づいて、対象二次電池の内部抵抗値を算出することができる。さらにこの構成によれば、スイッチング素子の数を二次電池の数より少なくすることができる。
【００３４】
また、前記個別抵抗算出部は、前記基本二次電池の内部抵抗値をｒｅ、前記部分抵抗値をＲｂとすると、下記の式（Ｅ）に基づき前記対象二次電池の内部抵抗値ｒを算出することが好ましい。
【００３５】
ｒ＝（ｒｅ×Ｒｂ）／（ｒｅ−Ｒｂ）  ・・・（Ｅ）
式（Ｅ）を用いることにより、個別抵抗算出部は、基本二次電池の内部抵抗値ｒｅと、部分抵抗値Ｒｂとに基づき対象二次電池の内部抵抗値ｒを算出することができる。
【００３６】
また、前記スイッチング素子は複数設けられ、前記複数のスイッチング素子は前記複数の二次電池のすべてとそれぞれ直列に接続され、前記接続部は、すべての前記直列回路を並列に接続し、前記個別抵抗算出部は、すべての前記スイッチング素子をオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を全体抵抗値として取得し、前記対象二次電池に接続されたスイッチング素子をオフさせ、かつ前記対象二次電池以外の二次電池に接続されたスイッチング素子をオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を部分抵抗値として取得し、前記全体抵抗値と前記部分抵抗値とに基づいて、前記対象二次電池の内部抵抗値を算出することが好ましい。
【００３７】
この構成によれば、個別抵抗算出部は、内部抵抗を算出しようとする対象二次電池と接続されたスイッチング素子を一つだけオフさせ、他のスイッチング素子をオンさせることにより、対象二次電池の内部抵抗値を算出することができるので、内部抵抗値を算出するために電池モジュールから切り離される二次電池の数を最小限にすることができる。その結果、電池モジュールを使用しながら対象二次電池の内部抵抗値を算出することが容易となる。
【００３８】
また、前記スイッチング素子は、前記複数の二次電池のうち一つを除く残余の二次電池に、それぞれ直列に接続され、前記接続部は、すべての前記直列回路と前記一つの二次電池である基本二次電池とを並列に接続し、前記個別抵抗算出部は、すべての前記スイッチング素子をオンさせた設定状態における前記全体電流と前記全体電圧とを用いて前記抵抗算出部によって算出させた抵抗値を全体抵抗値として取得し、前記対象二次電池に接続されたスイッチング素子をオフさせ、かつ前記対象二次電池以外の二次電池に接続されたスイッチング素子をオンさせた設定状態における前記全体電流と前記全体電圧とを用いて前記抵抗算出部によって算出させた抵抗値を部分抵抗値として取得し、前記全体抵抗値と前記部分抵抗値とに基づいて、前記対象二次電池の内部抵抗値を算出することが好ましい。
【００３９】
この構成によれば、対象二次電池に接続されたスイッチング素子をオフさせ、かつ対象二次電池以外の二次電池に接続されたスイッチング素子をオンさせた設定状態において抵抗算出部によって算出された部分抵抗値は、対象二次電池以外の二次電池の合成抵抗値となる。一方、全体抵抗値は、すべての二次電池の合成抵抗値となっているから、全体抵抗値と部分抵抗値との差は、対象二次電池の内部抵抗値に起因して生じている。従って、個別抵抗算出部は、全体抵抗値と部分抵抗値とに基づいて、対象二次電池の内部抵抗値を算出することができる。さらにこの構成によれば、スイッチング素子の数を二次電池の数より少なくすることができる。
【００４０】
また、前記個別抵抗算出部は、前記残余の二次電池を順次前記対象二次電池とすることによってすべての前記残余の二次電池の内部抵抗値ｒを算出し、前記すべての残余の二次電池の内部抵抗値ｒから、前記すべての残余の二次電池を並列接続して得られる合成抵抗値をＲｃとして算出し、前記全体抵抗値をＲｔｏｔａｌとすると、下記の式（Ｆ）に基づき前記基本二次電池の内部抵抗値ｒｅを算出する。
【００４１】
ｒｅ＝（Ｒｃ×Ｒｔｏｔａｌ）／（Ｒｃ−Ｒｔｏｔａｌ）  ・・・（Ｆ）
この構成によれば、式（Ｆ）を用いることによって、個別抵抗算出部は、基本二次電池以外の二次電池の合成抵抗値Ｒｃと、全体抵抗値をＲｔｏｔａｌとに基づき基本二次電池の内部抵抗値ｒｅを算出することができる。
【００４２】
また、前記個別抵抗算出部は、前記全体抵抗値をＲｔｏｔａｌ、前記部分抵抗値をＲｂとすると、下記の式（Ｇ）に基づき前記対象二次電池の内部抵抗値ｒを算出することが好ましい。
【００４３】
ｒ＝（Ｒｂ×Ｒｔｏｔａｌ）／（Ｒｂ−Ｒｔｏｔａｌ）  ・・・（Ｇ）
この構成によれば、式（Ｇ）を用いることにより、個別抵抗算出部は、全体抵抗値Ｒｔｏｔａｌと部分抵抗値Ｒｂとに基づいて、対象二次電池の内部抵抗値ｒを算出することができる。
【００４４】
また、前記スイッチング素子は複数設けられ、前記複数のスイッチング素子は前記複数の二次電池のすべてとそれぞれ直列に接続され、前記接続部は、すべての前記直列回路を並列に接続し、前記個別抵抗算出部は、前記複数のスイッチング素子のうち１つをオンさせた設定状態において前記抵抗算出部によって算出させた抵抗値を、前記オンされたスイッチング素子と直列に接続された二次電池の内部抵抗値として取得した後、オンされたスイッチング素子を除く残余のスイッチング素子を順次オンさせる設定状態とし、前記順次オンさせる都度、前記順次オンさせる直前に前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オンされた状態で前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オンされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出するようにしてもよい。
【００４５】
この構成によれば、第２部分抵抗値は、第１部分抵抗値を有する二次電池の並列回路に、対象二次電池が並列接続されて得られた合成抵抗値である。すなわち、第１部分抵抗値と第２部分抵抗値との差は、対象二次電池の内部抵抗値に起因して生じたものであるから、個別抵抗算出部は、第１部分抵抗値と第２部分抵抗値とに基づいて、対象二次電池の内部抵抗値を算出することができる。
【００４６】
また、前記スイッチング素子は、前記複数の二次電池のうち一つを除く残余の二次電池に、それぞれ直列に接続され、前記接続部は、すべての前記直列回路と前記一つの二次電池である基本二次電池とを並列に接続し、前記個別抵抗算出部は、すべての前記スイッチング素子をオフさせた設定状態において前記抵抗算出部によって算出させた抵抗値を前記基本二次電池の内部抵抗値として取得した後、前記スイッチング素子を順次オンさせる設定状態とし、前記順次オンさせる都度、前記順次オンさせる直前に前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オンされた状態で前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オンされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出するようにしてもよい。
【００４７】
この構成によれば、すべての前記スイッチング素子をオフさせた設定状態では、電池モジュールに接続されている二次電池は基本二次電池だけであるから、個別抵抗算出部は、すべてのスイッチング素子をオフさせた設定状態において抵抗算出部によって算出させた抵抗値を基本二次電池の内部抵抗値として取得することができる。さらに、第２部分抵抗値は、第１部分抵抗値を有する二次電池の並列回路に、対象二次電池が並列接続されて得られた合成抵抗値である。すなわち、第１部分抵抗値と第２部分抵抗値との差は、対象二次電池の内部抵抗値に起因して生じたものであるから、個別抵抗算出部は、第１部分抵抗値と第２部分抵抗値とに基づいて、対象二次電池の内部抵抗値を算出することができる。
【００４８】
また、前記スイッチング素子は複数設けられ、前記複数のスイッチング素子は前記複数の二次電池のすべてとそれぞれ直列に接続され、前記接続部は、すべての前記直列回路を並列に接続し、前記個別抵抗算出部は、前記複数のスイッチング素子をオンさせた設定状態において前記抵抗算出部によって抵抗値を算出させた後、前記複数のスイッチング素子を１つずつ順次オフさせる設定状態とし、前記順次オフさせる都度、前記順次オフされた状態で前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オフさせる直前に前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オフされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出するようにしてもよい。
【００４９】
この構成によれば、第２部分抵抗値は、第１部分抵抗値を有する二次電池の並列回路に、対象二次電池が並列接続されて得られた合成抵抗値である。すなわち、第１部分抵抗値と第２部分抵抗値との差は、対象二次電池の内部抵抗値に起因して生じたものであるから、個別抵抗算出部は、第１部分抵抗値と第２部分抵抗値とに基づいて、対象二次電池の内部抵抗値を算出することができる。
【００５０】
また、前記スイッチング素子は、前記複数の二次電池のうち一つを除く残余の二次電池に、それぞれ直列に接続され、前記接続部は、すべての前記直列回路と前記一つの二次電池である基本二次電池とを並列に接続し、前記個別抵抗算出部は、すべての前記スイッチング素子をオンさせた設定状態において前記抵抗算出部によって抵抗値を算出させた後、前記複数のスイッチング素子を１つずつ順次オフさせる設定状態とし、前記順次オフさせる都度、前記順次オフされた状態で前記抵抗算出部によって算出させた抵抗値である第１部分抵抗値と、前記順次オフさせる直前に前記抵抗算出部によって算出させた抵抗値である第２部分抵抗値とに基づいて、前記順次オフされたスイッチング素子と直列に接続された二次電池である対象二次電池の内部抵抗値を算出するようにしてもよい。
【００５１】
この構成によれば、第２部分抵抗値は、第１部分抵抗値を有する二次電池の並列回路に、対象二次電池が並列接続されて得られた合成抵抗値である。すなわち、第１部分抵抗値と第２部分抵抗値との差は、対象二次電池の内部抵抗値に起因して生じたものであるから、個別抵抗算出部は、第１部分抵抗値と第２部分抵抗値とに基づいて、対象二次電池の内部抵抗値を算出することができる。
【００５２】
また、前記個別抵抗算出部は、前記第１部分抵抗値がＲｓ、前記第２部分抵抗値がＲｐであるとき、下記の式（Ｈ）に基づき前記対象二次電池の内部抵抗値ｒを算出することが好ましい。
【００５３】
ｒ＝（Ｒｓ×Ｒｐ）／（Ｒｓ−Ｒｐ）  ・・・（Ｈ）
この構成によれば、式（Ｈ）を用いることによって、個別抵抗算出部は、第１部分抵抗値Ｒｓと第２部分抵抗値Ｒｐに基づき対象二次電池の内部抵抗値ｒを算出することができる。
【００５４】
また、前記抵抗算出部は、前記電流検出部と前記電圧検出部とによって、同期したタイミングで検出された前記全体電流と前記全体電圧との組を複数取得し、この複数の組から得られる回帰直線の傾きを前記電池モジュールの抵抗値として算出することが好ましい。
【００５５】
この構成によれば、抵抗算出部は、電池モジュールを充放電させる使用状態にしたままの状態で、電池モジュールの抵抗値を算出することができる。
【００５６】
また、前記電池モジュールから負荷への電流供給を制御する放電制御部をさらに備え、前記抵抗算出部は、前記放電制御部が前記電流供給量を変化させたとき、前記電流供給量の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出するようにしてもよい。
【００５７】
この構成によれば、放電制御部が電流供給量を変化させるタイミングで、電池モジュールの抵抗値を算出することができる。従って、電池モジュールの抵抗値を算出する目的のためだけに、電池モジュールの放電量を変化させる必要がない。
【００５８】
また、前記複数の二次電池における１つの二次電池が流すことができる電流の上限値が予め設定されており、前記電池モジュールから負荷への電流供給経路を開閉するスイッチング部と、前記スイッチング部と並列に接続され、電流を遮断する遮断状態と前記上限値を超えない範囲に流れる電流を制限する制限状態とに切り替え可能にされた電流制限部と、前記設定状態において前記電流制限部を前記遮断状態から前記制限状態に切り替えることによって前記負荷への電流供給を開始する放電制御部とをさらに備え、前記抵抗算出部は、前記放電制御部が前記電流供給を開始させたとき、前記電流供給量の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、前記放電制御部は、前記複数のスイッチング素子がオンされた後に前記スイッチング部により前記電流供給経路を閉じさせることが好ましい。
【００５９】
この構成によれば、放電制御部が電池モジュールから負荷への電流供給を開始させるとき、まず電流制限部によって流れる電流が制限される制限状態で電池モジュールから負荷への電流供給が行われる。そうすると、電池モジュールから負荷へ流れる電流が、１つの二次電池が流すことができる電流の上限値を超えない範囲に制限される。そして、抵抗算出部は、スイッチング素子のオン、オフが所定の設定状態にされた状態で電流供給が開始されたことによる電流供給量の変化と同期して生じた全体電圧の変化量と全体電流の変化量とに基づいて、電池モジュールの抵抗値を算出する。この抵抗値を算出するとき、電池モジュールに接続された二次電池が１つになるような設定状態になる場合があるが、電池モジュールに流れる電流は上記上限値を超えないので、二次電池に流れる電流が上記上限値を超えることがない。その結果、二次電池を劣化させるおそれが低減される。
【００６０】
また、前記複数の二次電池における１つの二次電池が流すことができる電流の上限値が予め設定されており、前記電池モジュールから負荷への電流供給経路を開閉するスイッチング部と、前記スイッチング部と並列に接続され、電流を遮断する遮断状態と、前記電池モジュールに含まれる二次電池の数より１少ない数と前記上限値との乗算値を超えない範囲に流れる電流を制限する制限状態とに切り替え可能にされた電流制限部と、前記設定状態において前記電流制限部を前記遮断状態から前記制限状態に切り替えることによって前記負荷への電流供給を開始する放電制御部とをさらに備え、前記抵抗算出部は、前記放電制御部が前記電流供給を開始させたとき、前記電流供給量の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、前記放電制御部は、前記複数のスイッチング素子がオンされた後に前記スイッチング部により前記電流供給経路を閉じさせるようにしてもよい。
【００６１】
この構成によれば、放電制御部が電池モジュールから負荷への電流供給を開始させるとき、まず電流制限部によって流れる電流が制限される制限状態で電池モジュールから負荷への電流供給が行われる。そうすると、電池モジュールから負荷へ流れる電流が、１つの二次電池が流すことができる電流の上限値と、電池モジュールに含まれる二次電池の数より１少ない数との乗算値を超えない範囲に制限される。そして、抵抗算出部は、スイッチング素子のオン、オフが所定の設定状態にされた状態で電流供給が開始されたことによる電流供給量の変化と同期して生じた全体電圧の変化量と全体電流の変化量とに基づいて、電池モジュールの抵抗値を算出する。この抵抗値を算出するとき、スイッチング素子により電池モジュールから二次電池が１つ切り離された設定状態になる場合があるが、電池モジュールに流れる電流は上記乗算値を超えないので、各二次電池に流れる電流が上記上限値を超えるおそれが低減される。その結果、二次電池を劣化させるおそれが低減される。
【００６２】
また、前記複数の二次電池における１つの二次電池の充電電流の上限値である充電上限値が予め設定されており、前記電池モジュールを充電する充電電流を制御する充電制御部をさらに備え、前記充電制御部は、前記設定状態において、前記充電上限値を超えない範囲で前記充電電流を変化させ、前記抵抗算出部は、前記設定状態における前記充電電流の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、前記充電制御部は、前記複数のスイッチング素子がオンされた後に前記充電電流を前記上限値を超えて増大させるようにしてもよい。
【００６３】
この構成によれば、充電制御部は、スイッチング素子のオン、オフが所定の設定状態にされた状態で、充電上限値を超えない範囲で電池モジュールの充電電流を変化させる。そして、抵抗算出部は、充電電流の変化と同期して生じた全体電圧の変化量と全体電流の変化量とに基づいて、電池モジュールの抵抗値を算出する。この抵抗値を算出するとき、電池モジュールに接続された二次電池が１つになるような設定状態になる場合があるが、電池モジュールに流れる電流は上記充電上限値を超えないので、二次電池に充電される電流が上記充電上限値を超えることがない。その結果、二次電池を劣化させるおそれが低減される。
【００６４】
また、前記複数の二次電池における１つの二次電池の充電電流の上限値である充電上限値が予め設定されており、前記電池モジュールを充電する充電電流を制御する充電制御部をさらに備え、前記充電制御部は、前記設定状態において、前記電池モジュールに含まれる二次電池の数より１少ない数と前記充電上限値との乗算値を超えない範囲で前記充電電流を変化させ、前記抵抗算出部は、前記設定状態における前記充電電流の変化と同期して生じた前記全体電圧の変化量と前記全体電流の変化量とに基づいて、前記電池モジュールの抵抗値を算出し、前記個別抵抗算出部は、前記設定状態において前記抵抗算出部による抵抗値の算出が実行された後、前記複数のスイッチング素子をオンさせることにより前記設定状態を終了させ、前記充電制御部は、前記複数のスイッチング素子がオンされた後に前記充電電流を増大させるようにしてもよい。
【００６５】
この構成によれば、充電制御部は、スイッチング素子のオン、オフが所定の設定状態にされた状態で、電池モジュールに含まれる二次電池の数より１少ない数と充電上限値との乗算値を超えない範囲で電池モジュールの充電電流を変化させる。そして、抵抗算出部は、充電電流の変化と同期して生じた全体電圧の変化量と全体電流の変化量とに基づいて、電池モジュールの抵抗値を算出する。この抵抗値を算出するとき、スイッチング素子により電池モジュールから二次電池が１つ切り離された設定状態になる場合があるが、電池モジュールに流れる充電電流は上記乗算値を超えないので、二次電池に充電される電流が上記充電上限値を超えることがない。その結果、二次電池を劣化させるおそれが低減される。
【００６６】
また、本発明に係る電池電源装置は、上述の内部抵抗検出回路と、二次電池とを備える。
【００６７】
この構成によれば、内部抵抗検出回路を備えた電池電源装置において、二次電池の内部抵抗値を検出するために必要となる電流検出部の数を、並列接続された二次電池の数より少なくすることができる
【発明の効果】
【００６８】
このような構成の内部抵抗検出回路、及びこれを用いた電池電源装置は、二次電池の内部抵抗値の検出精度を向上することができる。
【図面の簡単な説明】
【００６９】
【図１】本発明の第１施形態に係る内部抵抗検出回路、及びこれを備える電池電源装置を含む電池電源システムの一例を示すブロック図である。
【図２】図１に示す電池電源装置の動作の一例を示すフローチャートである。
【図３】図１に示す電池電源装置の動作の一例を示すフローチャートである。
【図４】図１に示す電池電源装置の動作の一例を示すフローチャートである。
【図５】図１に示す電池電源装置の動作の一例を示すフローチャートである。
【図６】図１に示す電池電源装置の動作の一例を示すフローチャートである。
【図７】図１に示す電池電源装置の動作の一例を示すフローチャートである。
【図８】図１に示す電池電源装置の動作の一例を示すフローチャートである。
【図９】スイッチング素子４３がオンされたタイミングＴｏｎ前後の全体電流Ｉと全体電圧Ｖの変化の一例を示す説明図である。
【図１０】充電パルスの出力を３回繰り返した場合の全体電流Ｉと全体電圧Ｖの変化を説明するための説明図である。
【図１１】抵抗算出部による内部抵抗値ｒ（ｍ）の算出方法の一例を説明するための説明図である。
【図１２】図３に示す動作の変形例を示すフローチャートである。
【図１３】図３に示す動作の変形例を示すフローチャートである。
【図１４】図４に示す動作の変形例を示すフローチャートである。
【図１５】図５に示す動作の変形例を示すフローチャートである。
【図１６】図５に示す動作の変形例を示すフローチャートである。
【図１７】図５に示す動作の変形例を示すフローチャートである。
【図１８】本発明の第２実施形態に係る電池電源システムの構成の一例を示すブロック図である。
【図１９】図１８に示す電池電源装置の動作の一例を示すフローチャートである。
【図２０】図１８に示す電池電源装置の動作の一例を示すフローチャートである。
【図２１】図１８に示す電池電源装置の動作の一例を示すフローチャートである。
【図２２】図１８に示す電池電源装置の動作の一例を示すフローチャートである。
【図２３】図１８に示す電池電源装置の動作の一例を示すフローチャートである。
【図２４】図１８に示す電池電源装置の動作の一例を示すフローチャートである。
【図２５】（ａ）は放電用ルックアップテーブルの一例を示し、（ｂ）は充電用ルックアップテーブルの一例を示す説明図である。
【発明を実施するための形態】
【００７０】
以下、本発明に係る実施形態を図面に基づいて説明する。
【００７１】
（第１実施形態）
図１は、本発明の第１施形態に係る内部抵抗検出回路、及びこれを備える電池電源装置を含む電池電源システムの一例を示すブロック図である。
【００７２】
図１に示す電池電源システム３は、電池電源装置１と、外部装置２とが組み合わされて構成されている。図１に示す電池電源装置１は、電池モジュール５、電流検出部６、電圧検出部７，Ｚ１〜Ｚｎ、温度センサＸ１〜Ｘｎ（温度検出部の一例）、制御部１０、スイッチング部４１、電流制限部４２、通信部１１、及び接続端子１５，１６，１７を備えている。
【００７３】
電池モジュール５は、ｎ個の二次電池Ｂ１〜Ｂｎと、ｎ個のスイッチング素子ＳＷ１〜ＳＷｎと、配線５２，５３（接続部の一例）を備えている。二次電池Ｂ１〜Ｂｎ及びスイッチング素子ＳＷ１〜ＳＷｎには、それぞれ１〜ｎの番号が付与されている。以下、二次電池Ｂ１〜Ｂｎを総称して二次電池Ｂと称し、スイッチング素子ＳＷ１〜ＳＷｎを総称してスイッチング素子ＳＷと称する。
【００７４】
スイッチング素子ＳＷ１〜ＳＷｎの一端は、二次電池Ｂ１〜Ｂｎの一端（例えば正極）に接続されている。スイッチング素子ＳＷ１〜ＳＷｎの他端は配線５２によって、互いに接続されている。二次電池Ｂ１〜Ｂｎの他端（例えば負極）は配線５３によって、互いに接続されている。これにより、二次電池Ｂとスイッチング素子ＳＷとから構成された複数の直列回路が、配線５２，５３によって並列接続されて、電池モジュール５が構成されている。
【００７５】
そして、電池電源装置１から二次電池Ｂ１〜Ｂｎを除いた部分が内部抵抗検出回路４の一例となっている。
【００７６】
なお、電池電源装置１は、複数の二次電池Ｂ１〜Ｂｎが並列接続された電池モジュール５を備える例を示したが、電池電源装置１は、二次電池Ｂを１つだけ備え、スイッチング素子ＳＷを備えない構成であってもよい。
【００７７】
配線５２は、電流検出部６及びスイッチング部４１を介して接続端子１５と接続されている。配線５３は、接続端子１６と接続されている。
【００７８】
スイッチング素子ＳＷとしては、例えばＦＥＴ（Field Effect Transistor）等の半導体スイッチング素子や、リレースイッチ等、種々のスイッチング素子を用いることができる。
【００７９】
二次電池Ｂは、例えば、単電池（セル）５１が複数直列接続された組電池として構成されている。なお、二次電池Ｂは、単電池が複数直列接続されたものに限られず、１つの単電池がそのまま二次電池Ｂとして用いられてもよい。また、二次電池Ｂは、単電池が複数並列接続されたものであってもよい。あるいは二次電池Ｂは、直列接続と並列接続とが組み合わされた接続方法によって、複数の単電池が組み合わされて構成された組電池であってもよい。
【００８０】
単電池５１としては、例えばリチウムイオン二次電池等の非水電解質二次電池やニッケル水素二次電池等の水溶液系二次電池など、種々の二次電池を用いることができる。
【００８１】
二次電池Ｂ１〜Ｂｎが放電可能な電流の上限値が、それぞれ予め設定されて、例えば記憶部１０７に記憶されている。以下、番号ｍ（ｍは１〜ｎのうちいずれかの番号）の二次電池が放電可能な電流の上限値を、電流上限値Ｉｌｉｍ（ｍ）と表記する。なお、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）は、互いに同一の値であってもよく、その場合、二次電池Ｂ１〜Ｂｎの電流上限値は、Ｉｌｉｍとされていてもよい。
【００８２】
また、１つの二次電池Ｂを充電可能な充電電流の上限値が、充電上限値Ｉｃｌｉｍとして予め設定されて、例えば記憶部１０７に記憶されている。
【００８３】
電流検出部６は、例えばシャント抵抗やアナログデジタルコンバータ等を用いて構成されている。電流検出部６は、電池モジュール５に流れる電流を全体電流Ｉとして検出する。具体的には、電流検出部６は、例えば電池モジュール５の充電電流をプラスの電流値で、放電電流をマイナスの電流値で表す信号を、全体電流Ｉを表す信号として制御部１０へ出力する。
【００８４】
電圧検出部７は、例えばアナログデジタルコンバータ等を用いて構成されている。そして、電圧検出部７は、配線５２と配線５３との間の電圧、すなわち電池モジュール５の両端間の電圧である全体電圧Ｖを検出し、全体電圧Ｖを表す信号を制御部１０へ出力する。
【００８５】
電圧検出部Ｚ１〜Ｚｎは、例えばアナログデジタルコンバータ等を用いて構成されている。そして、電圧検出部Ｚ１〜Ｚｎは、二次電池Ｂ１〜Ｂｎとそれぞれ並列に接続されて、二次電池Ｂ１〜Ｂｎの端子電圧Ｖ（１）〜Ｖ（ｎ）を検出する。例えば、スイッチング素子ＳＷｍをオフすると、電圧検出部Ｚｍによって検出される端子電圧Ｖ（ｍ）は、二次電池Ｂｍの開路電圧（OCV：Open circuit voltage）を表すことになる。以下、電圧検出部Ｚ１〜Ｚｎを総称して電圧検出部Ｚと称する。
【００８６】
なお、必ずしも電圧検出部７を備える必要はない。例えば、電圧検出部７を備えず、オンしているスイッチング素子ＳＷと接続された電圧検出部Ｚのうち、いずれか１つによって検出された端子電圧を、全体電圧Ｖとして用いるようにしてもよい。
【００８７】
また、電圧検出部Ｚは、必ずしも全体電圧Ｖを一括して検出するものに限られない。例えば、電圧検出部Ｚを、直列接続された単電池５１の端子電圧をそれぞれ検出する複数の電圧検出部によって構成し、各単電池５１の端子電圧を合計して端子電圧Ｖ（１）〜Ｖ（ｎ）を検出するようにしてもよい。あるいは、二次電池Ｂを、いくつかの単電池５１が直列に接続された複数の直列回路に分割し、各直列回路の端子電圧をそれぞれ検出する複数の電圧検出部によって電圧検出部Ｚを構成し、各直列回路の端子電圧を合計して端子電圧Ｖ（１）〜Ｖ（ｎ）を検出するようにしてもよい。
【００８８】
以下、電流検出部６、電圧検出部７，Ｚは、全体電流Ｉ、全体電圧Ｖ、及び端子電圧Ｖ（１）〜Ｖ（ｎ）を常時最新の値に更新しているものとする。すなわち、以下の説明において、全体電流Ｉ、全体電圧Ｖ、及び端子電圧Ｖ（１）〜Ｖ（ｎ）は、リアルタイムに更新された最新の値を示している。
【００８９】
温度センサＸ１〜Ｘｎは、例えばサーミスタや熱電対等の感熱素子を用いて構成されている。温度センサＸ１〜Ｘｎは、例えば二次電池Ｂ１〜Ｂｎとそれぞれ密着して、あるいは二次電池Ｂ１〜Ｂｎの近傍にそれぞれ配設されている。そして、温度センサＸ１〜Ｘｎは、二次電池Ｂ１〜Ｂｎの温度Ｔ１〜Ｔｎを検出し、温度Ｔ１〜Ｔｎを示す信号を制御部１０へ出力する。なお、温度センサは、必ずしも複数設けられている必要はなく、例えば、電池モジュール５全体の温度Ｔを検出する温度センサが１つ設けられる構成であってもよい。以下、温度センサＸ１〜Ｘｎを総称して温度センサＸと称する。
【００９０】
スイッチング部４１としては、例えばＦＥＴ等の半導体スイッチング素子や、リレースイッチ等、種々のスイッチング素子を用いることができる。
【００９１】
電流制限部４２は、スイッチング部４１と並列に接続されている。電流制限部４２は、例えば、スイッチング素子４３と抵抗４４とが直列に接続されて構成されている。抵抗４４は、スイッチング素子４３がオンされたときに電池モジュール５から外部装置２へ流れる突入電流を、Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）のうちの最小値である電流上限値Ｉｌｉｍ_ｍｉｎ以下に制限する抵抗値にされている。スイッチング素子４３がオフされた状態が電流制限部４２の遮断状態に相当し、スイッチング素子４３がオンされた状態が電流制限部４２の制限状態に相当している。
【００９２】
制御部１０は、例えば所定の演算処理を実行するＣＰＵ（Central Processing Unit）と、所定の制御プログラムが記憶されたＲＯＭ（Read Only Memory）と、データを一時的に記憶するＲＡＭ（Random Access Memory）と、例えばＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory）によって構成された記憶部１０７と、その周辺回路等とを備えて構成されている。そして、制御部１０は、例えばＲＯＭに記憶された制御プログラムを実行することにより、放電制御部１０１、充電制御部１０２、ＳＯＣ検出部１１１、個別抵抗算出部１０３、抵抗算出部１０４、倍率算出部１１２、内部抵抗値取得部１１３、個別電流算出部１０５、及び全体制限値算出部１０６として機能する。
【００９３】
記憶部１０７には、上述の電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）及び充電上限値Ｉｃｌｉｍの他、二次電池Ｂの開路電圧とＳＯＣとを対応付けるＳＯＣ算出用ルックアップテーブルと、図２５（ａ）に示す放電用ルックアップテーブルＬＵＴ１と、図２５（ｂ）に示す充電用ルックアップテーブルＬＵＴ２とが予め記憶されている。放電用ルックアップテーブルＬＵＴ１は放電用情報の一例に相当し、充電用ルックアップテーブルＬＵＴ２は充電用情報の一例に相当している。
【００９４】
放電用ルックアップテーブルＬＵＴ１は、二次電池Ｂが放電している状態における充電状態及び温度Ｔと、二次電池Ｂの内部抵抗値ｒｔとを対応付ける情報である。充電用ルックアップテーブルＬＵＴ２は、二次電池Ｂが放電している状態における充電状態及び温度Ｔと、二次電池Ｂの内部抵抗値ｒｔとを対応付ける情報である。
【００９５】
以下、二次電池の充電状態をＳＯＣ（State Of Charge）と称する。ＳＯＣは、二次電池の満充電容量に対する、その二次電池に充電されている充電電気量の割合を、例えば％（百分率）で表したものである。
【００９６】
放電用ルックアップテーブルＬＵＴ１は、例えば劣化していない新品（初期状態）の二次電池Ｂを放電させながら、温度ＴとＳＯＣとを変化させたときの内部抵抗値を測定することによって、実験的に得ることができる。充電用ルックアップテーブルＬＵＴ２は、例えば劣化していない新品（初期状態）の二次電池Ｂを充電しながら、温度ＴとＳＯＣとを変化させたときの内部抵抗値を測定することによって、実験的に得ることができる。
【００９７】
なお、記憶部１０７は、必ずしも放電用ルックアップテーブルＬＵＴ１と充電用ルックアップテーブルＬＵＴ２とを記憶している必要はない。放電時と充電時とで共用で用いられるルックアップテーブルＬＵＴを、１つだけ記憶部１０７に記憶する構成であってもよい。
【００９８】
図１に示す外部装置２は、例えば、充放電制御部２１、発電装置２２、負荷装置２３、通信部２４、及び接続端子２５，２６，２７を備えている。そして、接続端子２５，２６が、充放電制御部２１と接続され、接続端子２７が、通信部２４を介して充放電制御部２１と接続されている。また、発電装置２２と負荷装置２３とは、充放電制御部２１と接続されている。外部装置２は、電池電源装置１の負荷となっている。
【００９９】
そして、電池電源装置１と、外部装置２とが組み合わされると、接続端子１５，１６，１７と接続端子２５，２６，２７とがそれぞれ接続されるようになっている。
【０１００】
通信部１１，２４は、通信インターフェイス回路であり、接続端子１７，２７が接続されることで、通信部１１，２４間で、データ送受信が可能とされる。制御部１０と、充放電制御部２１とは、通信部１１，２４を介することで、互いにデータ送受信可能とされている。
【０１０１】
発電装置２２は、例えば太陽光発電装置（太陽電池）や、例えば風力や水力といった自然エネルギーやエンジン等の人工的な動力によって駆動される発電機等である。なお、充放電制御部２１は、発電装置２２の代わりに例えば商用電源に接続されていてもよい。
【０１０２】
負荷装置２３は、電池電源装置１から供給される電力により駆動される各種の負荷であり、例えばモータやバックアップ対象の負荷機器であってもよい。
【０１０３】
充放電制御部２１は、発電装置２２からの余剰電力や負荷装置２３で発生する回生電力を電池モジュール５に充電する。また、充放電制御部２１は、負荷装置２３の消費電流が急激に増大したり、あるいは発電装置２２の発電量が低下して負荷装置２３の要求する電力が発電装置２２の出力を超えたりすると、電池モジュール５から不足の電力を負荷装置２３へ供給する。
【０１０４】
また、充放電制御部２１は、充電制御部１０２から、通信部１１，２４を介して充電電流の指示信号が送信された場合には、当該指示信号に応じた充電電流を、接続端子２５，２６を介して電池モジュール５に流す。また、充放電制御部２１は、例えば図略の起動スイッチやイグニッションキー等の起動受付部によって、ユーザによる電池電源システム３の起動指示が受け付けられた場合、電池電源装置１の起動指示信号を通信部２４，１１を介して個別抵抗算出部１０３へ送信する。
【０１０５】
また、充放電制御部２１は、全体制限値算出部１０６から全体制限値Ｉｌｉｍ＿ｔｏｔａｌが送信されると、電池モジュール５を充電する際の電流値を、全体制限値Ｉｌｉｍ＿ｔｏｔａｌ以下に制限する。
【０１０６】
放電制御部１０１は、電池電源装置１が停止（待機）しているときは、スイッチング部４１とスイッチング素子４３とをオフさせることで、電池モジュール５の充放電経路を遮断する。また、放電制御部１０１は、充放電制御部２１からの起動指示信号に応じて個別抵抗算出部１０３がスイッチング素子ＳＷ１〜ＳＷｎのオン、オフを所定の設定状態にした後、スイッチング素子４３をオンさせることによって、電池モジュール５から外部装置２への電流供給を開始する。ここで、設定状態は、例えばスイッチング素子ＳＷ１〜ＳＷｎのうち１つだけをオンした状態である。
【０１０７】
外部装置２は、電池電源装置１から見て容量性の負荷であることが少なくない。外部装置２が容量性の負荷となっていると、電池モジュール５から外部装置２への電流供給を開始した直後、外部装置２の容量を充電する突入電流が流れる。しかしながら、突入電流は、抵抗４４によって、電流上限値Ｉｌｉｍ_ｍｉｎよりも小さな値に制限されるので、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）を超える電流が二次電池Ｂ１〜Ｂｎに流れることが防止される。
【０１０８】
また、放電制御部１０１は、個別抵抗算出部１０３によってスイッチング素子ＳＷ１〜ＳＷｎがオンされ、設定状態が解除された後にスイッチング部４１をオンさせる。
【０１０９】
充電制御部１０２は、電池モジュール５を充電する必要が生じた場合、充放電制御部２１へ、充電電流の供給を要求する指示信号を出力する。充電制御部１０２は、例えば、電圧検出部７によって検出された全体電圧Ｖが、電池モジュール５の放電を禁止すべき低い電圧として予め設定された放電終止電圧Ｖｅｎｄを下回った場合、電池モジュール５を充電する必要があると判断し、充放電制御部２１へ、充電電流の供給を要求する。
【０１１０】
ＳＯＣ検出部１１１は、二次電池Ｂ１〜ＢｎのＳＯＣであるＳＯＣ１〜ＳＯＣｎを検出する。例えば、ＳＯＣ検出部１１１は、個別抵抗算出部１０３によって、スイッチング素子ＳＷｍがオフされたとき、電圧検出部Ｚｍによって検出された端子電圧Ｖ（ｍ）を二次電池Ｂｍの開路電圧として取得する。そして、ＳＯＣ検出部１１１は、ＳＯＣ算出用ルックアップテーブルによって、このようにして得られた開路電圧と対応付けられているＳＯＣを、ＳＯＣｍとして取得することによって、順次、ＳＯＣ１〜ＳＯＣｎを検出することができる。
【０１１１】
なお、ＳＯＣ検出部１１１は、二次電池Ｂ１〜Ｂｎに流れる電流値Ｉ（１）〜Ｉ（ｎ）をそれぞれ積算し、二次電池Ｂの満充電容量に対するその積算値の割合を求めることによってＳＯＣ１〜ＳＯＣｎを算出してもよく、その他種々の方法によって、ＳＯＣ１〜ＳＯＣｎを求めることができる。ＳＯＣ検出部１１１は、ＳＯＣ１〜ＳＯＣｎを常時最新の値に更新しているものとする。すなわち、以下の説明においてＳＯＣ１〜ＳＯＣｎは、ＳＯＣ検出部１１１によって更新された最新の値を示している。
【０１１２】
個別抵抗算出部１０３は、スイッチング素子ＳＷ１〜ＳＷｎのオン、オフを所定の状態（組み合わせ）にさせた設定状態において、抵抗算出部１０４によって、その設定状態に対応する二次電池の内部抵抗値を算出させる。そして、個別抵抗算出部１０３は、設定状態を順次変化させつつ、抵抗算出部１０４によって、その変化した設定状態に対応する二次電池の内部抵抗値を順次算出させる。個別抵抗算出部１０３は、このようにして、二次電池Ｂ１〜Ｂｎの内部抵抗値ｒ（１）〜ｒ（ｎ）を算出する。
【０１１３】
以下、番号ｍの二次電池Ｂに対応する設定状態を設定状態ｍと称する。例えば、設定状態ｍは、スイッチング素子ＳＷｍをオンさせ、スイッチング素子ＳＷｍ以外のスイッチング素子ＳＷをオフさせた状態である。
【０１１４】
例えば、設定状態１は、スイッチング素子ＳＷ１をオンさせ、スイッチング素子ＳＷ２〜ＳＷｎをオフさせた状態である。設定状態ｎは、スイッチング素子ＳＷ１〜ＳＷ（ｎ−１）をオフさせ、スイッチング素子ＳＷｎをオンさせた状態である。
【０１１５】
なお、個別抵抗算出部１０３は、二次電池Ｂ１〜Ｂｎの内部抵抗値ｒ（１）〜ｒ（ｎ）を必ずしもすべて算出する必要はなく、内部抵抗値を算出しようとする任意の対象二次電池の内部抵抗値を算出すればよい。
【０１１６】
また、個別抵抗算出部１０３は、例えばスイッチング素子ＳＷ１〜ＳＷｎをすべてオンさせた設定状態、すなわち二次電池Ｂ１〜Ｂｎがすべて並列接続された状態での電池モジュール５の抵抗値を抵抗算出部１０４によって算出させる。そして個別抵抗算出部１０３は、このようにして得られた抵抗値を全体抵抗値Ｒｔｏｔａｌとして取得する。
【０１１７】
なお、個別抵抗算出部１０３は、例えば内部抵抗値ｒ（１）〜ｒ（ｎ）から、下記の式（１）に基づき合成抵抗である全体抵抗値Ｒｔｏｔａｌを算出してもよい。
【０１１８】
Ｒｔｏｔａｌ＝１／｛（１／ｒ（１））＋（１／ｒ（２））＋・・・＋（１／ｒ（ｎ））｝  ・・・（１）
なお、個別抵抗算出部１０３は、必ずしも全体抵抗値Ｒｔｏｔａｌを算出しなくてもよい。
【０１１９】
抵抗算出部１０４は、電流検出部６によって検出された全体電流Ｉと、電圧検出部７によって検出された全体電圧Ｖとに基づいて、個別抵抗算出部１０３によって所定の設定状態にされた電池モジュール５の抵抗値を算出する。
【０１２０】
個別電流算出部１０５は、内部抵抗値ｒ（１）〜ｒ（ｎ）と、電流検出部６によって検出された全体電流Ｉとに基づいて、二次電池Ｂ１〜Ｂｎに流れる電流の電流値Ｉ（１）〜Ｉ（ｎ）を算出する。
【０１２１】
なお、個別電流算出部１０５は、内部抵抗値ｒ（１）〜ｒ（ｎ）と全体抵抗値Ｒｔｏｔａｌとに基づいて、二次電池Ｂ１〜Ｂｎに流れる電流の電流値Ｉ（１）〜Ｉ（ｎ）を算出してもよい。
【０１２２】
倍率算出部１１２は、二次電池Ｂｍが放電している期間に電流検出部６により検出された全体電流Ｉと電圧検出部７により検出された全体電圧Ｖとに基づいて個別抵抗算出部１０３による抵抗値の算出が行われたとき、放電用ルックアップテーブルＬＵＴ１によってそのときの二次電池ＢのＳＯＣと温度Ｔとに対応付けられている内部抵抗値ｒｔと、個別抵抗算出部１０３によって算出された内部抵抗値ｒ（ｍ）との比を放電倍率Ｇｄ（ｍ）として算出する。すなわち、倍率算出部１１２は、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）を算出する。
【０１２３】
また、倍率算出部１１２は、二次電池Ｂｍが充電されている期間に電流検出部６により検出された全体電流Ｉと電圧検出部７により検出された全体電圧Ｖとに基づいて個別抵抗算出部１０３による抵抗値の算出が行われたとき、充電用ルックアップテーブルＬＵＴ２によってそのときの二次電池ＢのＳＯＣと温度Ｔとに対応付けられている内部抵抗値ｒｔと、個別抵抗算出部１０３によって算出された内部抵抗値ｒ（ｍ）との比を充電倍率Ｇｃ（ｍ）として算出する。すなわち、倍率算出部１１２は、充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）を算出する。
【０１２４】
以下、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）を総称して放電倍率Ｇｄと称し、充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）を総称して充電倍率Ｇｃと称する。
【０１２５】
なお、倍率算出部１１２は、必ずしも放電倍率Ｇｄ（ｍ）と充電倍率Ｇｃ（ｍ）とを算出する必要はない。倍率算出部１１２は、例えば、二次電池Ｂｍの充放電とは無関係に、全体電流Ｉと全体電圧Ｖとに基づいて個別抵抗算出部１０３による抵抗値の算出が行われたとき、ルックアップテーブルＬＵＴによってそのときの二次電池ＢｍのＳＯＣと温度Ｔとに対応付けられている内部抵抗値ｒｔと、個別抵抗算出部１０３によって算出された内部抵抗値ｒ（ｍ）との比を倍率Ｇ（ｍ）として算出するようにしてもよい。
【０１２６】
内部抵抗値取得部１１３は、二次電池Ｂｍが放電している期間に二次電池Ｂｍの内部抵抗値を取得する場合、放電用ルックアップテーブルＬＵＴ１によって、ＳＯＣｍと温度Ｔｍとに対応付けられている内部抵抗値ｒｔに、放電倍率Ｇｄ（ｍ）を乗算することにより得られた乗算値を、内部抵抗値ｒ（ｍ）として取得する。
【０１２７】
また、内部抵抗値取得部１１３は、二次電池Ｂｍが充電されている期間に二次電池Ｂｍの内部抵抗値を取得する場合、充電用ルックアップテーブルＬＵＴ２によって、ＳＯＣｍと温度Ｔｍとに対応付けられている内部抵抗値ｒｔに、充電倍率Ｇｃ（ｍ）を乗算することにより得られた乗算値を、内部抵抗値ｒ（ｍ）として取得する。
【０１２８】
これにより、内部抵抗値取得部１１３は、内部抵抗値ｒ（１）〜ｒ（ｎ）を取得する。また、内部抵抗値取得部１１３は、内部抵抗値ｒ（１）〜ｒ（ｎ）から、上述の式（１）を用いて全体抵抗値Ｒｔｏｔａｌを算出してもよい。
【０１２９】
なお、内部抵抗値取得部１１３は、二次電池Ｂｍの充放電にかかわらず、ルックアップテーブルＬＵＴによって、ＳＯＣｍと温度Ｔｍとに対応付けられている内部抵抗値ｒｔに、倍率Ｇ（ｍ）を乗算することにより得られた乗算値を、内部抵抗値ｒ（ｍ）として取得するようにしてもよい。
【０１３０】
全体制限値算出部１０６は、内部抵抗値取得部１１３によって取得された内部抵抗値ｒ（１）〜ｒ（ｎ）の比率を、ｐ（１）：ｐ（２）：・・・：ｐ（ｎ）として表し、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）と比率ｐ（１）〜ｐ（ｎ）とに基づき、電池モジュール５に流れる全体電流Ｉを制限するべき上限値として全体制限値Ｉｌｉｍ＿ｔｏｔａｌを算出する。そして、全体制限値算出部１０６は、全体制限値Ｉｌｉｍ＿ｔｏｔａｌを充放電制御部２１へ送信する。
【０１３１】
なお、全体制限値算出部１０６は、内部抵抗値ｒ（１）〜ｒ（ｎ）をそのまま比率ｐ（１）〜ｐ（ｎ）として用いてもよい。すなわち、ｐ（１）＝ｒ（１）、ｐ（２）＝ｒ（２）、・・・、ｐ（ｎ）＝ｒ（ｎ）としてもよい。
【０１３２】
次に、このように構成された電池電源システム３の動作について説明する。図２〜図８は、図１に示す電池電源装置１の動作の一例を示すフローチャートである。以下のフローチャートにおいて、同一の動作には同一のステップ番号を付して、その説明を省略する。まず、放電制御部１０１は、初期状態においてスイッチング部４１及びスイッチング素子４３をオフさせている（ステップＳ１）。これにより、電池モジュール５は、充放電されない状態にされている。
【０１３３】
次に、放電制御部１０１は、充放電制御部２１からの起動指示信号が受信されたか否かを確認する（ステップＳ２）。そして、起動指示信号が受信されていれば（ステップＳ２でＹＥＳ）、二次電池Ｂの内部抵抗値を算出するべく図３のステップＳ１０１へ移行する。
【０１３４】
ステップＳ１０１において、個別抵抗算出部１０３は、記憶部１０７から、前回内部抵抗値が算出された二次電池Ｂの番号ｍｐを読み出す（ステップＳ１０１）。記憶部１０７には、既に内部抵抗値が算出された二次電池Ｂの番号のうち、最も大きな番号が記憶されている。なお、まだ一つも内部抵抗値が算出されていない場合には、記憶部１０７には、番号ｍｐとして０が記憶されている。記憶部１０７に番号ｍｐを記憶させる処理については後述する。
【０１３５】
次に、個別抵抗算出部１０３は、内部抵抗値を算出しようとする対象二次電池の番号ｍを、ｍ＝ｍｐ＋１として算出する（ステップＳ１０２）。以下、二次電池Ｂｍの内部抵抗値ｒ（ｍ）の算出が実行される。
【０１３６】
次に、個別抵抗算出部１０３は、スイッチング素子ＳＷｍをオンさせ、スイッチング素子ＳＷｍ以外のスイッチング素子ＳＷをすべてオフさせる、すなわちスイッチング素子ＳＷｍのみをオンさせることによって、設定状態ｍとする（ステップＳ１０３）。
【０１３７】
次に、抵抗算出部１０４は、電流検出部６によって検出された全体電流Ｉの値を電流値Ｉ１として取得し、電圧検出部７によって検出された全体電圧Ｖの値を電圧値Ｖ１として取得する（ステップＳ１０４）。
【０１３８】
次に、放電制御部１０１は、スイッチング素子４３をオンすることにより、電池モジュール５から外部装置２への放電を開始させる（ステップＳ１０５）。そうすると、電池モジュール５からの放電電流である全体電流Ｉが増加する。このとき、電池モジュール５から放電される全体電流Ｉは、抵抗４４によって、電流上限値Ｉｌｉｍ_ｍｉｎ以下に制限されるので、二次電池Ｂｍの放電電流は、電流上限値Ｉｌｉｍ（ｍ）を超えない。これにより、二次電池Ｂｍに過電流が流れることが防止される結果、二次電池Ｂｍが劣化するおそれが低減される。
【０１３９】
次に、抵抗算出部１０４は、電流検出部６によって検出された全体電流Ｉの値を電流値Ｉ２として取得し、電圧検出部７によって検出された全体電圧Ｖの値を電圧値Ｖ２として取得する（ステップＳ１０６）。そして、抵抗算出部１０４は、電流値Ｉ１，Ｉ２の差を全体電流Ｉの変化量ｄＩとして算出し、電圧値Ｖ１，Ｖ２の差を全体電圧Ｖの変化量ｄＶとして算出する（ステップＳ１０７）。
【０１４０】
ここで、変化量ｄＩ及び変化量ｄＶは、スイッチング素子４３がオンされたことによる放電電流の変化と同期して生じたものである。図９は、スイッチング素子４３がオンされたタイミングＴｏｎ前後の全体電流Ｉと全体電圧Ｖの変化の一例を示す説明図である。図９に示すように、タイミングＴｏｎにおいてスイッチング素子４３がオンされると、突入電流が流れて全体電流Ｉが急激に増加する。このとき、二次電池Ｂｍの内部抵抗による電圧降下が生じて全体電圧Ｖが低下する。
【０１４１】
そこで、ステップＳ１０４〜Ｓ１０６に示すように、スイッチング素子４３がオンされる直前直後の全体電流Ｉと全体電圧Ｖとを検出することによって、変化量ｄＩ及び変化量ｄＶを取得することができる。なお、例えば、スイッチング素子４３をオンする前後の全体電流Ｉと全体電圧Ｖとを監視しておき、全体電流Ｉ及び全体電圧Ｖの変化のピーク時における変化量を、変化量ｄＩ及び変化量ｄＶとして取得するようにしてもよい。
【０１４２】
次に、抵抗算出部１０４は、変化量ｄＶを変化量ｄＩによって除算した商を、電池モジュール５の抵抗値Ｒｍｏｄとして算出する（ステップＳ１０８）。
【０１４３】
ここで、電池モジュール５に含まれるスイッチング素子ＳＷ１〜ＳＷｎのうち、オンしているのは二次電池Ｂｍに対応するスイッチング素子ＳＷｍのみであるから、抵抗値Ｒｍｏｄは内部抵抗値ｒ（ｍ）と等しい。そこで、抵抗算出部１０４は、抵抗値Ｒｍｏｄを内部抵抗値ｒ（ｍ）として取得する（ステップＳ１０９）。以上のようにして抵抗算出部１０４は、内部抵抗値ｒ（ｍ）を算出する。
【０１４４】
そして、個別抵抗算出部１０３は、番号ｍと二次電池Ｂの個数ｎとを比較し（ステップＳ１１０）、ｍがｎに満たなければ（ステップＳ１１０でＮＯ）まだすべての二次電池Ｂの内部抵抗値が算出されていないから、個別抵抗算出部１０３は、次の機会に残りの二次電池Ｂの内部抵抗値算出を継続できるように、番号ｍをｍｐとして（ステップＳ１１１）記憶部１０７に記憶させる（ステップＳ１１３）。
【０１４５】
一方、ｍがｎと等しければ（ステップＳ１１０でＹＥＳ）、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出されたことになるから、個別抵抗算出部１０３は、次の機会からは再び内部抵抗値ｒ（１）から順に内部抵抗値を更新するように、番号ｍｐをゼロにして（ステップＳ１１２）記憶部１０７に記憶させる（ステップＳ１１３）。
【０１４６】
次に、個別抵抗算出部１０３は、スイッチング素子ＳＷ１〜ＳＷｎをオンさせる（ステップＳ１１４）。これにより、電池モジュール５は、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）の合計まで、放電電流を流すことが可能となる。その結果、全体電流Ｉを電流上限値Ｉｌｉｍ以下に制限する必要が無くなるので、放電制御部１０１は、スイッチング部４１をオンする（ステップＳ１１５）。
【０１４７】
次に、図６のステップＳ４１１において、倍率算出部１１２は、記憶部１０７を参照し、放電用ルックアップテーブルＬＵＴ１によってＳＯＣｍと温度Ｔｍとに対応付けられている内部抵抗値ｒｔを取得する（ステップＳ４１１）。そして、倍率算出部１１２は、個別電流算出部１０５によって算出された内部抵抗値ｒ（ｍ）を、内部抵抗値ｒｔによって除算して得られた商を放電倍率Ｇｄ（ｍ）として算出し（ステップＳ４１２）、図２のステップＳ５へ移行する。
【０１４８】
ここで、内部抵抗値ｒ（ｍ）は、ステップＳ１０５においてスイッチング素子４３がオンされることによって二次電池Ｂｍが放電している期間に電流検出部６により検出された全体電流Ｉと電圧検出部７により検出された全体電圧Ｖとに基づいて個別電流算出部１０５（及び抵抗算出部１０４）によって算出された抵抗値である。
【０１４９】
具体的には、ステップＳ４１１において、例えば、ＳＯＣｍ＝６０（％）、Ｔｍ＝４０℃のとき、放電用ルックアップテーブルＬＵＴ１から、ｒｔ＝９．７６５（ｍΩ）が得られる。このとき、内部抵抗値ｒ（ｍ）＝１９．５３（ｍΩ）であったとすると、Ｇｄ（ｍ）＝１９．５３／９．７６５＝２となる。
【０１５０】
次に、ステップＳ５において、倍率算出部１１２によって、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）及び充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）の算出が終了したか否かが確認される（ステップＳ５）。そして、まだ内部抵抗値が算出されていない二次電池Ｂがあれば（ステップＳ５でＮＯ）、再びステップＳ２へ移行する。
【０１５１】
ステップＳ２において、電池電源装置１が既に起動済みであれば、起動指示信号はなくなっているから（ステップＳ２でＮＯ）、ステップＳ３へ移行する。
【０１５２】
ステップＳ３において、充電制御部１０２によって、充電を開始するか否か（充電が必要か否か）が判断される（ステップＳ３）。そして、充電制御部１０２が、充電を開始するとき（ステップＳ３でＹＥＳ）、個別抵抗算出部１０３は、二次電池Ｂの内部抵抗値を算出するべく図４のステップＳ２０１へ移行する。一方、充電制御部１０２は、充電を開始しないときは（ステップＳ３でＮＯ）、ステップＳ４へ移行する。
【０１５３】
ステップＳ２０１〜Ｓ２０４の処理は、ステップＳ１０１〜Ｓ１０４と同様であるのでその説明を省略する。ステップＳ２０５において、充電制御部１０２は、記憶部１０７から充電上限値Ｉｃｌｉｍを読み出して、充放電制御部２１へ、充電上限値Ｉｃｌｉｍ以下の充電電流、例えば充電上限値Ｉｃｌｉｍと等しい充電電流の供給を要求する指示信号を出力する。そうすると、充放電制御部２１は、充電上限値Ｉｃｌｉｍの充電電流を出力する。
【０１５４】
これにより、電池モジュール５に流れる全体電流Ｉ（充電電流）が変化し、全体電流Ｉの変化と同期して全体電圧Ｖの変化が生じる。以下、ステップＳ１０６〜Ｓ１１４と同様のステップＳ２０６〜Ｓ２１４が実行されることにより、内部抵抗値ｒ（ｍ）が算出され、スイッチング素子ＳＷ１〜ＳＷｎがオンされる。
【０１５５】
このとき、二次電池Ｂｍに流れる充電電流は充電上限値Ｉｃｌｉｍを超えないので、二次電池Ｂｍが過電流により劣化するおそれが低減される。なお、充電制御部１０２は、ステップＳ２０５において、充電上限値Ｉｃｌｉｍ以下の充電電流を要求すればよく、充電上限値Ｉｃｌｉｍを要求する例に限らない。
【０１５６】
次に、図７（ａ）のステップＳ５２１において、倍率算出部１１２は、記憶部１０７を参照し、充電用ルックアップテーブルＬＵＴ２によってＳＯＣｍと温度Ｔｍとに対応付けられている内部抵抗値ｒｔを取得する（ステップＳ５２１）。そして、倍率算出部１１２は、個別電流算出部１０５によって算出された内部抵抗値ｒ（ｍ）を、内部抵抗値ｒｔによって除算して得られた商を充電倍率Ｇｃ（ｍ）として算出する（ステップＳ５２２）。
【０１５７】
ここで、内部抵抗値ｒ（ｍ）は、ステップＳ２０５において充電電流が要求されることによって、二次電池Ｂｍが充電されている期間に電流検出部６により検出された全体電流Ｉと電圧検出部７により検出された全体電圧Ｖとに基づいて個別電流算出部１０５（及び抵抗算出部１０４）によって算出された抵抗値である。
【０１５８】
具体的には、ステップＳ５２１において、例えば、ＳＯＣｍ＝６０（％）、Ｔｍ＝４０℃のとき、充電用ルックアップテーブルＬＵＴ２から、ｒｔ＝９．０６５（ｍΩ）が得られる。このとき、内部抵抗値ｒ（ｍ）＝１８．１３（ｍΩ）であったとすると、Ｇｃ（ｍ）＝１８．１３／９．０６５＝２となる。
【０１５９】
次に、充電制御部１０２によって、充電電流が増加される（ステップＳ５２３）。ステップＳ２１４においてスイッチング素子ＳＷ１〜ＳＷｎがオンされると、電池モジュール５は、充電上限値Ｉｃｌｉｍのｎ倍まで、充電電流を受け入れ可能となる。そこで、充電制御部１０２は、例えばＣＣ充電（定電流充電）用の充電電流値として予め設定された電流値Ｉｃｃの充電電流の供給を要求する指示信号を、充放電制御部２１へ出力する（ステップＳ５２３）。そうすると、電池モジュール５に供給される充電電流が増大するので、充電時間が短縮される。
【０１６０】
なお、ステップＳ２０４〜Ｓ２０８の後、充電制御部１０２は、充放電制御部２１へ充電電流をゼロにする指示信号を出力するステップＳ２０８ａを実行するようにしてもよい。そして、ステップＳ２０４〜Ｓ２０８ａを複数回繰り返すことによって、充放電制御部２１が電池モジュール５にパルス状の充電電流を３回流すと共に、抵抗算出部１０４は、抵抗値Ｒｍｏｄを複数回算出し、その平均値をステップＳ２０９において内部抵抗値ｒ（ｍ）とする構成としてもよい。この場合、内部抵抗値ｒ（ｍ）の算出精度が向上する。
【０１６１】
図１０は、ステップＳ２０４〜Ｓ２０８ａを３回繰り返した場合の全体電流Ｉと全体電圧Ｖの変化を説明するための説明図である。図１０に示すように、ステップＳ２０５、Ｓ２０８ａにおいて全体電流Ｉ（充電電流）を変化させると、全体電流Ｉの変化と同期して全体電圧Ｖが変化する。この全体電流Ｉと全体電圧Ｖとの変化に基づき内部抵抗値ｒ（ｍ）を算出することが可能となる。
【０１６２】
以後、充電制御部１０２は、充放電制御部２１による充電を継続し（ステップＳ５２４でＮＯ）、充電が終了すると（ステップＳ５２４でＹＥＳ）、ステップＳ５へ移行する。
【０１６３】
充電制御部１０２は、ステップＳ３において充電を開始しないとき（ステップＳ３でＮＯ）、ステップＳ４へ移行する。ステップＳ４では、個別抵抗算出部１０３によって、全体電流Ｉと電流判定値Ｉｊとが比較される（ステップＳ４）。電流判定値Ｉｊとしては、電流上限値Ｉｌｉｍ_ｍｉｎ以下の値が予め設定されている。そして、全体電流Ｉが電流判定値Ｉｊ以下であれば、個別抵抗算出部１０３は、内部抵抗値ｒを算出するべく図５のステップＳ３０１へ移行し、全体電流Ｉが電流判定値Ｉｊを超えていれば、個別抵抗算出部１０３は、内部抵抗値ｒの算出を行うことなくステップＳ５へ移行する。
【０１６４】
図５のステップＳ３０１において、個別抵抗算出部１０３は、番号ｍを１とする。次に、個別抵抗算出部１０３は、スイッチング素子ＳＷｍをオンさせ、スイッチング素子ＳＷｍ以外のスイッチング素子ＳＷをすべてオフさせる、すなわちスイッチング素子ＳＷｍのみをオンさせることによって、設定状態ｍとする（ステップＳ３０２）。
【０１６５】
ここで、ステップＳ４によって、全体電流Ｉが電流上限値Ｉｌｉｍ_ｍｉｎ以下の場合にのみステップＳ３０２が実行される。従って、スイッチング素子ＳＷｍのみオンされて、全体電流Ｉがすべて二次電池Ｂｍを流れても、二次電池Ｂｍに流れる電流が電流上限値Ｉｌｉｍ（ｍ）を超えることがない。従って二次電池Ｂｍを劣化させるおそれが低減される。
【０１６６】
次に、抵抗算出部１０４は、電流検出部６によって検出された全体電流Ｉの値を電流値Ｉ１として取得し、電圧検出部７によって検出された全体電圧Ｖの値を電圧値Ｖ１として取得する。そして、抵抗算出部１０４は、電流値Ｉ１と電圧値Ｖ１との組をデータＤ１として取得する（ステップＳ３０３）。
【０１６７】
次に、抵抗算出部１０４は、例えば、ステップＳ３０３を実行してから予め設定された待機時間の経過後、電流検出部６によって検出された全体電流Ｉの値を電流値Ｉ２として取得し、電圧検出部７によって検出された全体電圧Ｖの値を電圧値Ｖ２として取得する。そして、抵抗算出部１０４は、電流値Ｉ２と電圧値Ｖ２との組をデータＤ２として取得する（ステップＳ３０４）。
【０１６８】
待機時間としては、例えば、充放電制御部２１による電池モジュール５の充放電制御の状態が変化して全体電流Ｉに変化が生じる可能性が高いと考えられる時間、例えば１分程度の時間が予め設定されている。
【０１６９】
次に、抵抗算出部１０４は、例えば、ステップＳ３０４を実行してから予め設定された待機時間の経過後、電流検出部６によって検出された全体電流Ｉの値を電流値Ｉ３として取得し、電圧検出部７によって検出された全体電圧Ｖの値を電圧値Ｖ３として取得する。そして、抵抗算出部１０４は、電流値Ｉ３と電圧値Ｖ３との組をデータＤ３として取得する（ステップＳ３０５）。
【０１７０】
次に、抵抗算出部１０４は、データＤ１，Ｄ２，Ｄ３から回帰直線Ｌを生成し（ステップＳ３０６）、回帰直線Ｌの傾きを内部抵抗値ｒ（ｍ）として取得する（ステップＳ３０７）。
【０１７１】
図１１は、このような抵抗算出部１０４による内部抵抗値ｒ（ｍ）の算出方法の一例を説明するための説明図である。図１１（ａ）は、ステップＳ３０３〜Ｓ３０５が、二次電池Ｂｍの放電中に実行された場合の例を示し、図１１（ｂ）は、ステップＳ３０３〜Ｓ３０５が、二次電池Ｂｍの充電中に実行された場合の例を示している。
【０１７２】
抵抗算出部１０４は、図１１（ａ）（ｂ）に示すように、複数のデータの組であるデータＤ１，Ｄ２，Ｄ３で示される点を通る回帰直線Ｌを生成する。このようにして得られる回帰直線Ｌは、下記の式（２）で表され、その傾きを示す係数Ｒが、二次電池Ｂｍの内部抵抗値ｒ（ｍ）として得られる。
【０１７３】
Ｖ＝Ｒ×Ｉ＋Ｖ０  ・・・（２）
回帰直線Ｌを得るためには、値が異なる複数の全体電圧Ｖと全体電流Ｉとの組を取得する必要がある。しかしながら、例えば電気自動車では、車両の加減速や路面の状態等に応じて充放電電流が頻繁に変化し、例えば風力発電では、風速の変化に応じて充放電電流が頻繁に変化する。従って、例えば１分程度の期間において、回帰直線Ｌを得るのに必要な、値が異なる複数の全体電圧Ｖと全体電流Ｉとの組を取得することが可能である。
【０１７４】
なお、データの組数が、データＤ１，Ｄ２，Ｄ３の３組である例を示したが、データの組数は３組に限られず、２組以上あればよい。
【０１７５】
次に、倍率算出部１１２によって、データＤ１，Ｄ２，Ｄ３が二次電池Ｂｍの放電中に取得されたデータか否か、すなわち電流値Ｉ１，Ｉ２，Ｉ３が、すべてマイナスの値であるか否かが確認される（ステップＳ３７１）。そして、電流値Ｉ１，Ｉ２，Ｉ３が、すべてマイナスの値であれば（ステップＳ３７１でＹＥＳ）、倍率算出部１１２は、図６のステップＳ４１１へ移行し、ステップＳ４１１，Ｓ４１２を実行した後、図５のステップＳ３０８へ移行する。
【０１７６】
一方、電流値Ｉ１，Ｉ２，Ｉ３のうち１つでもプラスの値であれば（ステップＳ３７１でＮＯ）、倍率算出部１１２は、データＤ１，Ｄ２，Ｄ３が二次電池Ｂｍの放電中に取得されたデータか否か、すなわち電流値Ｉ１，Ｉ２，Ｉ３が、すべてプラスの値であるか否かが確認される（ステップＳ３７２）。そして、電流値Ｉ１，Ｉ２，Ｉ３が、すべてプラスの値であれば（ステップＳ３７２でＹＥＳ）、データＤ１，Ｄ２，Ｄ３は二次電池Ｂｍの充電中に取得されたデータであるから、倍率算出部１１２は、図７（ｂ）のステップＳ５２１へ移行し、ステップＳ５２１、Ｓ５２２を実行した後、図５のステップＳ３０８へ移行する。
【０１７７】
ステップＳ３０８において、個別抵抗算出部１０３は、番号ｍと二次電池Ｂの個数ｎとを比較し（ステップＳ３０８）、ｍがｎに満たなければ（ステップＳ３０８でＮＯ）まだすべての二次電池Ｂの内部抵抗値が算出されていないから、個別抵抗算出部１０３は、番号ｍに１を加算して（ステップＳ３０９）、再びステップＳ３０２〜Ｓ３７２を繰り返す。
【０１７８】
一方、ｍがｎと等しければ（ステップＳ３０８でＹＥＳ）、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出されたことになるから、個別抵抗算出部１０３は、内部抵抗値の算出を終了し、スイッチング素子ＳＷ１〜ＳＷｎをオンさせ（ステップＳ３１０）、図２のステップＳ５へ移行する。
【０１７９】
以上、ステップＳ１〜Ｓ５、Ｓ１０１〜Ｓ１１５、Ｓ２０１〜Ｓ２１４，Ｓ５２３，Ｓ５２４、及びＳ３０１〜Ｓ３１０の処理により、電池モジュール５に含まれる二次電池Ｂ１〜Ｂｎの内部抵抗値ｒ（１）〜ｒ（ｎ）を検出することができる。そして、内部抵抗値ｒ（１）〜ｒ（ｎ）を検出するために必要な電流検出部は、電流検出部６一つでよいから、二次電池の内部抵抗値を検出するために必要となる電流検出部の数を、並列接続された二次電池の数より少なくすることができる。
【０１８０】
また、ステップＳ４１１、Ｓ４１２、Ｓ５２１、Ｓ５２２の処理により、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）及び充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）が算出される。
【０１８１】
ステップＳ５において、倍率算出部１１２によって、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）及び充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）の算出が終了したか否かが確認され、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）及び充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）の算出が終了していれば（ステップＳ５でＹＥＳ）、内部抵抗値取得部１１３が、以後の内部抵抗値ｒ（１）〜ｒ（ｎ）を行うべく図８のステップＳ７２１へ移行する。
【０１８２】
ステップＳ７２１において、内部抵抗値取得部１１３は、全体電流Ｉが０未満か否か、すなわち電池モジュール５が放電状態か否かを確認する（ステップＳ７２１）。そして、全体電流Ｉが０未満であれば（ステップＳ７２１でＹＥＳ）、内部抵抗値取得部１１３は、放電用ルックアップテーブルＬＵＴ１を参照し、ＳＯＣ１〜ＳＯＣｎと、Ｔ１〜Ｔｎとに基づき、内部抵抗値ｒt（１）〜ｒt（ｎ）を取得する（ステップＳ７２２）。
【０１８３】
次に、内部抵抗値取得部１１３は、１〜ｎのｍについて、内部抵抗値ｒt（ｍ）に放電倍率Ｇｄ（ｍ）を乗算することによって、内部抵抗値ｒ（ｍ）を算出する（ステップＳ７２３）。
【０１８４】
具体的には、ステップＳ７２２において、例えば、ＳＯＣｍ＝４０（％）、Ｔｍ＝４０℃のとき、放電用ルックアップテーブルＬＵＴ１から、内部抵抗値ｒt（ｍ）＝８．９２（ｍΩ）が得られる。ここで、放電倍率Ｇｄ（ｍ）＝２であれば、内部抵抗値ｒ（ｍ）＝８．９２×２＝１７．８４（ｍΩ）となる。また、例えば、ＳＯＣｍ＝６０（％）、Ｔｍ＝２０℃のとき、放電用ルックアップテーブルＬＵＴ１から、内部抵抗値ｒt（ｍ）＝１４．７５（ｍΩ）が得られる。ここで、放電倍率Ｇｄ（ｍ）＝２であれば、内部抵抗値ｒ（ｍ）＝１４．７５×２＝２９．５（ｍΩ）となる。
【０１８５】
一方、ステップＳ７２１において、全体電流Ｉが０以上であれば（ステップＳ７２１でＮＯ）、内部抵抗値取得部１１３は、充電用ルックアップテーブルＬＵＴ２を参照し、ＳＯＣ１〜ＳＯＣｎと、Ｔ１〜Ｔｎとに基づき、内部抵抗値ｒt（１）〜ｒt（ｎ）を取得する（ステップＳ７２４）。
【０１８６】
次に、内部抵抗値取得部１１３は、１〜ｎの範囲のｍについて、内部抵抗値ｒt（ｍ）に充電倍率Ｇｃ（ｍ）を乗算することによって、内部抵抗値ｒ（ｍ）を算出する（ステップＳ７２５）。
【０１８７】
具体的には、ステップＳ７２４において、例えば、ＳＯＣｍ＝４０（％）、Ｔｍ＝４０℃のとき、充電用ルックアップテーブルＬＵＴ２から、内部抵抗値ｒt（ｍ）＝８．８２０（ｍΩ）が得られる。ここで、充電倍率Ｇｃ（ｍ）＝２であれば、内部抵抗値ｒ（ｍ）＝８．８２０×２＝１７．６４（ｍΩ）となる。また、例えば、ＳＯＣｍ＝６０（％）、Ｔｍ＝２０℃のとき、充電用ルックアップテーブルＬＵＴ２から、内部抵抗値ｒt（ｍ）＝１３．１００（ｍΩ）が得られる。ここで、充電倍率Ｇｃ（ｍ）＝２であれば、内部抵抗値ｒ（ｍ）＝１３．１００×２＝２６．２００（ｍΩ）となる。
【０１８８】
以上、ステップＳ７２１〜Ｓ７２５の処理により、二次電池Ｂｍの内部抵抗値ｒ（ｍ）が求められる。この場合、二次電池Ｂｍの温度Ｔｍ、ＳＯＣｍ、及び二次電池Ｂｍが放電中であるか充電中であるかに基づいて二次電池Ｂｍの内部抵抗値ｒ（ｍ）が算出されるので、温度の影響、ＳＯＣの影響、及び二次電池の充放電状態の影響が考慮されて内部抵抗値ｒ（ｍ）が算出される結果、内部抵抗値ｒ（ｍ）の算出精度が向上する。
【０１８９】
次に、個別電流算出部１０５は、二次電池Ｂ１〜Ｂｎに流れる電流を算出するべくステップＳ６へ移行する。
【０１９０】
ステップＳ６において、個別電流算出部１０５は、内部抵抗値取得部１１３によって取得された内部抵抗値ｒ（１）〜ｒ（ｎ）と、全体電流Ｉとに基づき、下記の式（３）を用いて、二次電池Ｂ１〜Ｂｎに流れる電流の電流値Ｉ（１）〜Ｉ（ｎ）を算出する。
【０１９１】
【数４】
0005857229.tif 000005
【０１９２】
個別電流算出部１０５は、ｍを１〜ｎとして電流値Ｉ（１）〜Ｉ（ｎ）をすべて算出してもよく、任意の二次電池Ｂｍに流れる電流値Ｉ（ｍ）のみを算出してもよい。
【０１９３】
なお、個別電流算出部１０５は、内部抵抗値取得部１１３によって上述の全体抵抗値Ｒｔｏｔａｌを算出させ、内部抵抗値ｒ（１）〜ｒ（ｎ）と、全体抵抗値Ｒｔｏｔａｌと、全体電流Ｉとに基づいて、下記の式（４）を用いて、二次電池Ｂ１〜Ｂｎに流れる電流の電流値Ｉ（１）〜Ｉ（ｎ）を算出するようにしてもよい。
【０１９４】
Ｉ（ｍ）＝｛Ｒｔｏｔａｌ／ｒ（ｍ）｝×Ｉ  ・・・（４）
式（３）、式（４）を用いて、個別電流算出部１０５は、ｍを１〜ｎとして電流値Ｉ（１）〜Ｉ（ｎ）をすべて算出してもよく、任意の二次電池Ｂｍに流れる電流値Ｉ（ｍ）のみを算出してもよい。
【０１９５】
次に、全体制限値算出部１０６は、内部抵抗値取得部１１３によって取得された内部抵抗値ｒ（１）〜ｒ（ｎ）の比率をｐ（１）：ｐ（２）：  ・・・  ：ｐ（ｎ）として算出する（ステップＳ７）。そして、全体制限値算出部１０６は、比率ｐ（１）〜ｐ（ｎ）と、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）とに基づき、式（５）を用いて全体制限値Ｉｌｉｍ＿ｔｏｔａｌを算出する（ステップＳ８）。
【０１９６】
【数５】
0005857229.tif 000006
【０１９７】
なお、全体制限値算出部１０６は、ステップＳ７において、内部抵抗値取得部１１３によって上述の全体抵抗値Ｒｔｏｔａｌを算出させ、Ｒｔｏｔａｌと内部抵抗値ｒ（ｍ）との比率をＰｔｏｔａｌ：Ｐ（ｍ）（ｍは１〜ｎの整数）として求め、ステップＳ８において、全体抵抗値Ｒｔｏｔａｌと、比率Ｐ（１）〜Ｐ（ｎ）と、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）とに基づき、式（６）を用いて全体制限値Ｉｌｉｍ＿ｔｏｔａｌを算出するようにしてもよい。
【０１９８】
【数６】
0005857229.tif 000007
【０１９９】
次に、個別電流算出部１０５によって電流値Ｉ（１）〜Ｉ（ｎ）が充放電制御部２１へ送信され、全体制限値算出部１０６によって全体制限値Ｉｌｉｍ＿ｔｏｔａｌが充放電制御部２１へ送信され（ステップＳ９）、ステップＳ７２１へ移行する。
【０２００】
これにより、電流検出部６を一つ設けただけで、充放電制御部２１は、二次電池Ｂ１〜Ｂｎに流れる電流の電流値Ｉ（１）〜Ｉ（ｎ）を監視することが可能となる。また、充放電制御部２１は、電池モジュール５によって放電させる電流量を、全体制限値Ｉｌｉｍ＿ｔｏｔａｌ以下に制限することによって、電流値Ｉ（１）〜Ｉ（ｎ）を電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）以下にすることができる。その結果、過電流に起因して二次電池Ｂ１〜Ｂｎの劣化が生じるおそれを低減できる。
【０２０１】
また、内部抵抗値取得部１１３によって、温度の影響、ＳＯＣの影響、及び二次電池の充放電状態の影響が考慮されて算出された内部抵抗値ｒ（１）〜ｒ（ｎ）に基づき、電流値Ｉ（１）〜Ｉ（ｎ）及び全体制限値Ｉｌｉｍ＿ｔｏｔａｌが算出されるので、電流値Ｉ（１）〜Ｉ（ｎ）及び全体制限値Ｉｌｉｍ＿ｔｏｔａｌの算出精度が向上する。
【０２０２】
以降、ステップＳ７２１〜Ｓ９が繰り返されることにより、内部抵抗値ｒ（１）〜ｒ（ｎ）、電流値Ｉ（１）〜Ｉ（ｎ）、及び全体制限値Ｉｌｉｍ＿ｔｏｔａｌの算出が繰り返され、これらの値が二次電池Ｂの温度及びＳＯＣの変化に応じて最新の値に更新される。
【０２０３】
内部抵抗値ｒ（１）〜ｒ（ｎ）、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）、及び充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）は、二次電池Ｂの劣化に伴い変化する。そこで、例えば図略の電源スイッチやイグニッションスイッチがオフされた後、再び電源スイッチやイグニッションスイッチがオンされて装置が起動されたときや、予め設定された一定の期間毎に定期的にステップＳ１から実行が開始され、放電倍率Ｇｄ（１）〜Ｇｄ（ｎ）、及び充電倍率Ｇｃ（１）〜Ｇｃ（ｎ）が新たに算出されて更新される。
【０２０４】
なお、個別抵抗算出部１０３は、図３に示すステップＳ１０１〜Ｓ１１５の代わりに、図１２、図１３に示すステップＳ４０１〜Ｓ５１６の処理によって、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出してもよい。
【０２０５】
まず、ステップＳ２からステップＳ４０１へ移行し（ステップＳ２でＹＥＳ）、ステップＳ４０１〜Ｓ４０７の処理によって、全体抵抗値Ｒｔｏｔａｌを算出する。
【０２０６】
具体的には、個別抵抗算出部１０３は、ステップＳ４０１において、スイッチング素子ＳＷ１〜ＳＷｎをオンさせる。以下、ステップＳ４０２〜Ｓ４０６の処理は、ステップＳ１０４〜Ｓ１０８と同様であるからその説明を省略する。
【０２０７】
そして、抵抗算出部１０４は、ステップＳ４０６において算出された抵抗値Ｒｍｏｄを、全体抵抗値Ｒｔｏｔａｌとして取得し（ステップＳ４０７）、図１３のステップＳ５０１へ移行する。ステップＳ５０１，Ｓ５０２，Ｓ５０４〜Ｓ５０８，Ｓ５１１〜Ｓ５１６は、ステップＳ１０１，Ｓ１０２，Ｓ１０４〜Ｓ１０８，Ｓ１１０〜Ｓ１１５と同様であるのでその説明を省略する。
【０２０８】
ステップＳ５０３において、個別抵抗算出部１０３は、スイッチング素子ＳＷｍをオフさせ、スイッチング素子ＳＷｍ以外のスイッチング素子ＳＷをすべてオンさせる、すなわちスイッチング素子ＳＷｍのみをオフさせることによって、設定状態ｍとする（ステップＳ５０３）。
【０２０９】
この場合、ステップＳ５０５においてスイッチング素子４３がオンされたとき、電池モジュール５は、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）から電流上限値Ｉｌｉｍ（ｍ）を除いた電流上限値の合計に相当する電流を流すことが可能である。電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）は、互いにほぼ等しい電流上限値Ｉｌｉｍであると考えられる。従って、ステップＳ５０３においてスイッチング素子ＳＷｍのみをオフさせることによって、抵抗４４の抵抗値を、スイッチング素子４３がオンされたときに電池モジュール５から外部装置２へ流れる突入電流を、電流上限値Ｉｌｉｍに（ｎ−１）を乗算した値に相当する電流に制限する抵抗値以上の抵抗値にすることができる。すなわち、スイッチング素子ＳＷｍのみをオンする場合と比べて、抵抗４４の抵抗値を小さくすることができるので、抵抗４４の抵抗値の設計自由度が増大する。
【０２１０】
個別抵抗算出部１０３は、ステップＳ５０８において抵抗算出部１０４によって算出された抵抗値Ｒｍｏｄを、部分抵抗値Ｒｂとして取得する（ステップＳ５０９）。そして、個別抵抗算出部１０３は、全体抵抗値Ｒｔｏｔａｌと部分抵抗値Ｒｂとに基づいて、下記の式（７）を用いて内部抵抗値ｒ（ｍ）を算出する（ステップＳ５１０）。
【０２１１】
ｒ（ｍ）＝（Ｒｂ×Ｒｔｏｔａｌ）／（Ｒｂ−Ｒｔｏｔａｌ）  ・・・（７）
このように、ステップＳ４０１〜Ｓ５１６の処理によっても、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出することができる。
【０２１２】
また、個別電流算出部１０５は、図４に示すステップＳ２０１〜Ｓ２１４の代わりに、図１４に示すステップＳ６０１〜Ｓ６１５の処理によって、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出してもよい。ステップＳ６０１〜Ｓ６１５の処理においては、スイッチング素子ＳＷを一つだけオフさせる設定状態にすることによって、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出される。ステップＳ６０１，Ｓ６０２，Ｓ６０４，Ｓ６０６〜Ｓ６０８、Ｓ６１１〜Ｓ６１５の処理は、ステップＳ２０１，Ｓ２０２，Ｓ２０４，Ｓ２０６〜Ｓ２０８，Ｓ２１０〜Ｓ２１４と同様であるからその説明を省略する。
【０２１３】
ステップＳ６０３において、個別抵抗算出部１０３は、スイッチング素子ＳＷｍをオフさせ、スイッチング素子ＳＷｍ以外のスイッチング素子ＳＷをすべてオンさせる、すなわちスイッチング素子ＳＷｍのみをオフさせることによって、設定状態ｍとする（ステップＳ６０３）。
【０２１４】
また、ステップＳ６０５において、充電制御部１０２は、記憶部１０７から充電上限値Ｉｃｌｉｍを読み出して、充放電制御部２１へ、充電上限値Ｉｃｌｉｍの（ｎ−１）倍を超えない範囲に予め設定された充電電流の供給を要求する指示信号を出力する。そうすると、充放電制御部２１は、充電制御部１０２からの指示信号に応じた充電電流を出力する。この場合、ステップＳ２０５と比べて充電電流を増大させることが可能となる。
【０２１５】
個別抵抗算出部１０３は、ステップＳ６０８において抵抗算出部１０４によって算出された抵抗値Ｒｍｏｄを、部分抵抗値Ｒｂとして取得する（ステップＳ６０９）。そして、個別抵抗算出部１０３は、ステップＳ５１０と同様の処理により、内部抵抗値ｒ（ｍ）を算出する（ステップＳ６１０）。なお、ステップＳ６１０において、個別抵抗算出部１０３は、ステップＳ４０７において算出された全体抵抗値Ｒｔｏｔａｌを用いてもよい。また、個別抵抗算出部１０３は、ステップＳ６０３においてスイッチング素子ＳＷ１〜ＳＷｎを全てオンさせた設定状態で、ステップＳ６０３〜Ｓ６０８を実行することにより得られた抵抗値Ｒｍｏｄを全体抵抗値Ｒｔｏｔａｌとして用いてもよい。
【０２１６】
このように、ステップＳ６０１〜Ｓ６１５の処理によっても、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出することができる。
【０２１７】
また、個別抵抗算出部１０３は、図５に示すステップＳ３０１〜Ｓ３１０の代わりに、図１５に示すステップＳ７０１〜Ｓ７１１の処理によって、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出してもよい。ステップＳ７０１〜Ｓ７１１の処理においては、スイッチング素子ＳＷを一つだけオフさせる設定状態にすることによって、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出される。ステップＳ７０１，Ｓ７０３〜Ｓ７０６，Ｓ３７１，Ｓ３７２，Ｓ７０９〜Ｓ７１１の処理は、ステップＳ３０１，Ｓ３０３〜Ｓ３０６，Ｓ３７１，Ｓ３７２，Ｓ３０８〜Ｓ３１０と同様であるからその説明を省略する。
【０２１８】
ステップＳ７０２において、個別抵抗算出部１０３は、スイッチング素子ＳＷｍをオフさせ、スイッチング素子ＳＷｍ以外のスイッチング素子ＳＷをすべてオンさせる、すなわちスイッチング素子ＳＷｍのみをオフさせることによって、設定状態ｍとする（ステップＳ７０２）。
【０２１９】
この場合、電池モジュール５は、電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）から電流上限値Ｉｌｉｍ（ｍ）を除いた電流上限値の合計に相当する電流を流すことが可能である。電流上限値Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）は、互いにほぼ等しい電流上限値Ｉｌｉｍであると考えられる。従って、ステップＳ７０２の処理によれば、ステップＳ４における電流判定値Ｉｊとして、電流上限値Ｉｌｉｍに（ｎ−１）を乗算した乗算値以下の値を設定することが可能となる。電流上限値Ｉｌｉｍに（ｎ−１）を乗算した乗算値以下の値を設定することにより、電流判定値Ｉｊとして電流上限値Ｉｌｉｍ以下の値を設定する場合と比べて、電流判定値Ｉｊを増大させることができるので、内部抵抗値ｒ（１）〜ｒ（ｎ）の算出機会を増大させることができる。
【０２２０】
個別抵抗算出部１０３は、ステップＳ７０６において抵抗算出部１０４によって生成された回帰直線Ｌの傾きすなわち電池モジュール５の抵抗値を、部分抵抗値Ｒｂとして取得する（ステップＳ７０７）。そして、個別抵抗算出部１０３は、ステップＳ５１０と同様の処理により、内部抵抗値ｒ（ｍ）を算出する（ステップＳ７０８）。なお、ステップＳ７０８において、個別抵抗算出部１０３は、ステップＳ４０７において算出された全体抵抗値Ｒｔｏｔａｌを用いてもよい。また、個別抵抗算出部１０３は、ステップＳ７０２においてスイッチング素子ＳＷ１〜ＳＷｎを全てオンさせた設定状態で、ステップＳ７０２〜Ｓ７０６を実行することにより得られた回帰直線Ｌの傾きを、全体抵抗値Ｒｔｏｔａｌとして用いてもよい。
【０２２１】
このように、ステップＳ７０１〜Ｓ７１１の処理によっても、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出することができる。
【０２２２】
また、個別抵抗算出部１０３は、図５に示すステップＳ３０１〜Ｓ３１０の代わりに、図１６に示すステップＳ８０１〜Ｓ８１６の処理によって、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出してもよい。ステップＳ８０１〜Ｓ８１６の処理においては、オンさせるスイッチング素子ＳＷを一つ順次増加させる設定状態にすることによって、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出される。ステップＳ８０１〜Ｓ８０６の処理は、ステップＳ３０１〜Ｓ３０６と同様であり、ステップＳ８０７，Ｓ８１４，Ｓ８１６の処理は、ステップＳ７０７，Ｓ７０９，Ｓ７１１と同様であるからその説明を省略する。
【０２２３】
ステップＳ８０８において、個別抵抗算出部１０３は、番号ｍが１か否かを確認する（ステップＳ８０８）。番号ｍが１であれば（ステップＳ８０８でＹＥＳ）、まだ第１部分抵抗値Ｒｓが算出されていないから、個別抵抗算出部１０３は、ステップＳ８０９へ移行し、部分抵抗値Ｒｂを内部抵抗値ｒ（ｍ）とすることによって内部抵抗値ｒ（ｍ）を求めると共に部分抵抗値Ｒｂを第１部分抵抗値Ｒｓとすることによって第１部分抵抗値Ｒｓを求め（ステップＳ８０９）、番号ｍに１を加算して（ステップＳ８１０）、ステップＳ８１１へ移行する。
【０２２４】
ステップＳ８１１では、個別抵抗算出部１０３は、スイッチング素子ＳＷｍをオン、すなわちオンしているスイッチング素子ＳＷの数を一つずつ増加させて設定状態ｍとし（ステップＳ８１１）、再びステップＳ８０３〜Ｓ８０８を繰り返す。
【０２２５】
次に、ステップＳ８０８において、番号ｍが１でなければ（ステップＳ８０８でＮＯ）、個別抵抗算出部１０３は、部分抵抗値Ｒｂを第２部分抵抗値Ｒｐとすることによって第２部分抵抗値Ｒｐを求め（ステップＳ８１２）、第１部分抵抗値Ｒｓと第２部分抵抗値Ｒｐとに基づいて、下記の式（８）に基づいて、内部抵抗値ｒ（ｍ）を算出する（ステップＳ８１３）。
【０２２６】
内部抵抗値ｒ（ｍ）＝（Ｒｓ×Ｒｐ）／（Ｒｓ−Ｒｐ）  ・・・（８）
個別抵抗算出部１０３は、番号ｍと二次電池Ｂの個数ｎとを比較し（ステップＳ８１４）、ｍがｎに満たなければ（ステップＳ８１４でＮＯ）まだすべての二次電池Ｂの内部抵抗値が算出されていないから、個別抵抗算出部１０３は、第２部分抵抗値Ｒｐを新たな第１部分抵抗値Ｒｓとすることによって第１部分抵抗値Ｒｓを求め（ステップＳ８１５）、ステップＳ８１０〜Ｓ８１４を繰り返す。
【０２２７】
一方、ｍがｎと等しければ（ステップＳ８１４でＹＥＳ）、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出されたことになるから、個別抵抗算出部１０３は、内部抵抗値の算出を終了し、スイッチング素子ＳＷ１〜ＳＷｎをオンさせ（ステップＳ８１６）、ステップＳ５へ移行する。
【０２２８】
このように、ステップＳ８０１〜Ｓ８１６の処理によっても、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出することができる。
【０２２９】
また、個別抵抗算出部１０３は、図５に示すステップＳ３０１〜Ｓ３１０の代わりに、図１７に示すステップＳ９０１〜Ｓ９１６の処理によって、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出してもよい。ステップＳ９０１〜Ｓ９１６の処理においては、オフさせるスイッチング素子ＳＷを一つずつ順次増加させる設定状態にすることによって、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出される。ステップＳ９０３〜Ｓ９０６の処理は、ステップＳ３０３〜Ｓ３０６と同様であり、ステップＳ９０７，Ｓ９１３，Ｓ９１４，Ｓ９１６の処理は、ステップＳ８０７，Ｓ８１３，Ｓ８１４、Ｓ８１６と同様であるからその説明を省略する。
【０２３０】
ステップＳ９０１において、個別抵抗算出部１０３は、番号ｍをゼロとし（ステップＳ９０１）、スイッチング素子ＳＷ１〜ＳＷｎをオンさせる（ステップＳ９０２）。
【０２３１】
ステップＳ９０８において、個別抵抗算出部１０３は、番号ｍが０か否かを確認する（ステップＳ９０８）。番号ｍが０であれば（ステップＳ９０８でＹＥＳ）、まだ第２部分抵抗値Ｒｐが算出されていないから、個別抵抗算出部１０３は、ステップＳ９０９へ移行し、部分抵抗値Ｒｂを第２部分抵抗値Ｒｐとすることによって第２部分抵抗値Ｒｐを求め（ステップＳ９０９）、番号ｍに１を加算して（ステップＳ９１０）、ステップＳ９１１へ移行する。
【０２３２】
ステップＳ９１１では、個別抵抗算出部１０３は、スイッチング素子ＳＷｍをオフ、すなわちオフしているスイッチング素子ＳＷの数を一つ増加させて設定状態ｍとし（ステップＳ９１１）、再びステップＳ９０３〜Ｓ９０８を繰り返す。
【０２３３】
次に、ステップＳ９０８において、番号ｍが０でなければ（ステップＳ９０８でＮＯ）、個別抵抗算出部１０３は、部分抵抗値Ｒｂを第１部分抵抗値Ｒｓとすることによって第１部分抵抗値Ｒｓを求め（ステップＳ９１２）、第１部分抵抗値Ｒｓと第２部分抵抗値Ｒｐとに基づいて、上述の式（８）に基づいて、内部抵抗値ｒ（ｍ）を算出する（ステップＳ９１３）。
【０２３４】
個別抵抗算出部１０３は、番号ｍと二次電池Ｂの個数ｎとを比較し（ステップＳ９１４）、ｍがｎに満たなければ（ステップＳ９１４でＮＯ）まだすべての二次電池Ｂの内部抵抗値が算出されていないから、個別抵抗算出部１０３は、第１部分抵抗値Ｒｓを新たな第２部分抵抗値Ｒｐとすることによって第２部分抵抗値Ｒｐを求め（ステップＳ９１５）、ステップＳ９１０〜Ｓ９１４を繰り返す。
【０２３５】
一方、ｍがｎと等しければ（ステップＳ９１４でＹＥＳ）、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出されたことになるから、個別抵抗算出部１０３は、内部抵抗値の算出を終了し、スイッチング素子ＳＷ１〜ＳＷｎをオンさせ（ステップＳ９１６）、ステップＳ５へ移行する。
【０２３６】
このように、ステップＳ９０１〜Ｓ９１６の処理によっても、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出することができる。
【０２３７】
なお、内部抵抗検出回路４は、ステップＳ２、Ｓ１０１〜Ｓ１１５、及びＳ４０１〜Ｓ５１６を実行しない構成としてもよい。あるいは、内部抵抗検出回路４は、ステップＳ３、Ｓ２０１〜Ｓ２１６、Ｓ６０１〜Ｓ６１７を実行しない構成としてもよい。あるいは、内部抵抗検出回路４は、ステップＳ４、Ｓ３０１〜Ｓ３１０、Ｓ７０１〜Ｓ７１１、Ｓ８０１〜Ｓ９１６を実行しない構成としてもよい。あるいは、内部抵抗検出回路４は、ステップＳ６を実行しない構成としてもよい。あるいは、内部抵抗検出回路４は、ステップＳ７、Ｓ８を実行しない構成としてもよい。
【０２３８】
（第２実施形態）
次に、本発明の第２実施形態に係る内部抵抗検出回路４ａ、及びこれを備える電池電源装置１ａを含む電池電源システム３ａについて説明する。図１８は、本発明の第２実施形態に係る電池電源システム３ａの構成の一例を示すブロック図である。図１８に示す電池電源システム３ａと図１に示す電池電源システム３とでは、電池モジュール５ａがスイッチング素子ＳＷ１を備えていない点、及び個別抵抗算出部１０３ａの動作が異なる。
【０２３９】
その他の構成は図１に示す電池電源システム３と同様であるので、図１８において図１と同一の符号を付した構成は、同一の構成であることを示し、その説明を省略する。以下、電池電源装置１ａの特徴的な点について、説明する。
【０２４０】
電池モジュール５ａは、スイッチング素子ＳＷ１を備えず、配線５２は、二次電池Ｂ１の一方の端子（例えば正極端子）に直接接続されている。二次電池Ｂ１は、基本二次電池の一例に相当している。
【０２４１】
図１９〜図２４は、電池電源システム３ａの動作の一例を示すフローチャートである。以下のフローチャートにおいて、上述のフローチャートと同様の動作には同一のステップ番号を付して、その説明を省略する。まず、図２に示すステップＳ１〜Ｓ５、及び図８に示すステップＳ７２１〜Ｓ７２５，Ｓ６〜Ｓ９は、電池電源システム３ａにおいても同様である。
【０２４２】
図２のステップＳ２から図１９のステップＳ１０１へ移行（ステップＳ２でＹＥＳ）した後、図３と同様のステップＳ１０１，Ｓ１０２が実行され、その後ステップＳ１２１において、個別抵抗算出部１０３ａは、番号ｍが１か否かを確認する（ステップＳ１２１）。そして、番号ｍが１であれば（ステップＳ１２１でＹＥＳ）、個別抵抗算出部１０３ａは、スイッチング素子ＳＷ２〜ＳＷｎをオフし、電池モジュール５ａにおいて二次電池Ｂ１のみが接続された状態とする（ステップＳ１２２）。
【０２４３】
以下、ステップＳ１０４〜Ｓ１０８が実行された後、個別抵抗算出部１０３ａは、抵抗値Ｒｍｏｄを内部抵抗値ｒ（１）として取得する（ステップＳ１２３）。その後、ステップＳ１１１，Ｓ１１３〜Ｓ１１５が実行され、図６に示すステップＳ４１１へ移行する。
【０２４４】
一方、ステップＳ１２１において、番号ｍが１でなければ（ステップＳ１２１でＮＯ）、すでに内部抵抗値ｒ（１）は算出されているので、個別抵抗算出部１０３ａは、図２０に示すステップＳ１０３へ移行する。図２０におけるステップＳ１０３が実行されると、電池モジュール５ａは、二次電池Ｂ１と二次電池Ｂｍの並列回路となる。
【０２４５】
以下、ステップＳ１０４〜Ｓ１０８が実行された後、個別抵抗算出部１０３ａは、内部抵抗値ｒ（１）と抵抗値Ｒｍｏｄとに基づき、下記の式（９）を用いて内部抵抗値ｒ（ｍ）を算出する（ステップＳ１２５）。抵抗値Ｒｍｏｄは、部分抵抗値に相当している。
【０２４６】
ｒ（ｍ）＝（ｒ（１）×Ｒｍｏｄ）／（ｒ（１）−Ｒｍｏｄ）  ・・・（９）
以下、ステップＳ１１０〜Ｓ１１５が実行されて、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出される。そして、ステップＳ１１５から図６に示すステップＳ４１１へ移行する。
【０２４７】
以上、図１９、図２０に示す処理により、電池電源装置１ａは、図１に示す電池電源装置１と同様、電池電源装置１ａが、内部抵抗値ｒ（１）〜ｒ（ｎ）を検出するために必要な電流検出部は、電流検出部６一つである。さらに、電池電源装置１ａは、電池電源装置１よりもスイッチング素子ＳＷの数を一つ減らすことができる。
【０２４８】
また、図２のステップＳ３から図２１のステップＳ２０１へ移行（ステップＳ３でＹＥＳ）した後、図４と同様のステップＳ２０１，Ｓ２０２が実行され、次にステップＳ２２１において、個別抵抗算出部１０３ａは、番号ｍが１か否かを確認する（ステップＳ２２１）。そして、番号ｍが１であれば（ステップＳ２２１でＹＥＳ）、個別抵抗算出部１０３ａは、スイッチング素子ＳＷ２〜ＳＷｎをオフし、電池モジュール５ａにおいて二次電池Ｂ１のみが接続された状態とする（ステップＳ２２２）。
【０２４９】
以下、ステップＳ２０４〜Ｓ２１４が実行され、個別抵抗算出部１０３ａによって抵抗値Ｒｍｏｄが内部抵抗値ｒ（１）として取得された後、図７（ａ）のステップＳ５２１へ移行する。
【０２５０】
一方、ステップＳ２２１において、番号ｍが１でなければ（ステップＳ２２１でＮＯ）、すでに内部抵抗値ｒ（１）は算出されているので、個別抵抗算出部１０３ａは、図２２に示すステップＳ２０３へ移行する。図２２におけるステップＳ２０３が実行されると、電池モジュール５ａは、二次電池Ｂ１と二次電池Ｂｍの並列回路となる。
【０２５１】
以下、ステップＳ２０４〜Ｓ２０８が実行された後、個別抵抗算出部１０３ａは、内部抵抗値ｒ（１）と抵抗値Ｒｍｏｄとに基づき、上述の式（９）を用いて内部抵抗値ｒ（ｍ）を算出する（ステップＳ２２５）。抵抗値Ｒｍｏｄは、部分抵抗値に相当している。
【０２５２】
以下、ステップＳ２１０〜Ｓ２１４ａが実行されて、内部抵抗値ｒ（１）〜ｒ（ｎ）が算出された後、図７（ａ）のステップＳ５２１へ移行する。
【０２５３】
以上、図２１、図２２に示す処理により、図１に示す電池電源装置１と同様、電池電源装置１ａが、内部抵抗値ｒ（１）〜ｒ（ｎ）を検出するために必要な電流検出部は、電流検出部６一つである。さらに、電池電源装置１ａは、電池電源装置１よりもスイッチング素子ＳＷの数を一つ減らすことができる。
【０２５４】
また、図２のステップＳ４から図２３のステップＳ３０１へ移行（ステップＳ４でＹＥＳ）した後、図５と同様のステップＳ３０１が実行され、次にステップＳ３０２ａにおいて、個別抵抗算出部１０３ａは、スイッチング素子ＳＷ２〜ＳＷｎを全てオフさせることによって設定状態ｍとする（ステップＳ３０２ａ）。
【０２５５】
以下、ステップＳ３０３〜Ｓ３０６が実行されて、ステップＳ３０７ａにおいて個別抵抗算出部１０３ａが回帰直線Ｌの傾きを内部抵抗値ｒ（１）として取得し（ステップＳ３０７ａ）、ステップＳ３７１，Ｓ３７２が実行される。ステップＳ３７１から図６のステップＳ４１１へ移行した場合（ステップＳ３７１でＹＥＳ）、ステップＳ４１２の後、図２４のステップＳ３０８へ移行する。また、ステップＳ３７２から図７（ｂ）のステップＳ５２１へ移行した場合（ステップＳ３７２でＹＥＳ）、ステップＳ５２２の後、図２４のステップＳ３０８へ移行する。
【０２５６】
以下、ステップＳ３０８，Ｓ３０９，Ｓ３０２〜Ｓ３０６が実行され、次に個別抵抗算出部１０３ａが回帰直線Ｌの傾きを抵抗値Ｒｍｏｄとして取得し（ステップＳ３２１）、ステップＳ２２５が実行されて内部抵抗値ｒ（ｍ）が算出される。
【０２５７】
ステップＳ２２５の後、ステップＳ３７１，Ｓ３７２が実行される。ステップＳ３７１から図６のステップＳ４１１へ移行した場合（ステップＳ３７１でＹＥＳ）、ステップＳ４１２の後、図２４のステップＳ３０８へ移行する。また、ステップＳ３７２から図７（ｂ）のステップＳ５２１へ移行した場合（ステップＳ３７２でＹＥＳ）、ステップＳ５２２の後、図２４のステップＳ３０８へ移行する。
【０２５８】
以下、内部抵抗値ｒ（２）〜ｒ（ｎ）が算出されるまでステップＳ３０８〜Ｓ２２５，Ｓ３７１，Ｓ３７２が繰り返された後、スイッチング素子ＳＷ２〜ＳＷｎがオンされて（ステップＳ３１０ａ）、ステップＳ５へ移行する。
【０２５９】
以上、図２３、図２４に示す処理により、図１に示す電池電源装置１と同様、電池電源装置１ａが、内部抵抗値ｒ（１）〜ｒ（ｎ）を検出するために必要な電流検出部は、電流検出部６一つである。さらに、電池電源装置１ａは、電池電源装置１よりもスイッチング素子ＳＷの数を一つ減らすことができる。
【０２６０】
また、電池電源装置１ａは、スイッチング素子ＳＷ２〜ＳＷｎを一つだけオフさせる設定状態にすることによって、内部抵抗値ｒ（１）を算出してもよい。電池電源装置１ａは、図１２、図１３におけるステップＳ４０１〜Ｓ５１６の処理において、ステップＳ４０１，Ｓ５１５では、スイッチング素子ＳＷ２〜ＳＷｎをオンするものとし、番号ｍが２〜ｎの場合についてのみ、ステップＳ４０１〜Ｓ５１６の処理を実行して内部抵抗値ｒ（２）〜ｒ（ｎ）を算出するようにしてもよい。そして、個別抵抗算出部１０３ａは、内部抵抗値ｒ（２）〜ｒ（ｎ）が並列接続された場合の合成抵抗値Ｒｃを、下記の式（１０）に基づき算出する。
【０２６１】
Ｒｃ＝１／｛（１／ｒ（２））＋（１／ｒ（３））＋・・・＋（１／ｒ（ｎ））｝  ・・・（１０）
そして、個別抵抗算出部１０３ａは、下記の式（１１）に基づき、内部抵抗値ｒ（１）を算出してもよい。
【０２６２】
ｒ（１）＝（Ｒｃ×Ｒｔｏｔａｌ）／（Ｒｃ−Ｒｔｏｔａｌ）  ・・・（１１）
同様に、電池電源装置１ａは、図１４のステップＳ６０１〜Ｓ６１５及び図７のステップＳ５２１〜Ｓ５２４の処理において、ステップＳ６１５では、スイッチング素子ＳＷ２〜ＳＷｎをオンするものとし、番号ｍが２〜ｎの場合についてのみ、ステップＳ６０１〜Ｓ６１５及び図７のステップＳ５２１〜Ｓ５２４の処理を実行して内部抵抗値ｒ（２）〜ｒ（ｎ）を算出するようにしてもよい。そして、個別抵抗算出部１０３ａは、内部抵抗値ｒ（１）を、上述の式（１０），（１１）を用いて算出してもよい。
【０２６３】
同様に、電池電源装置１ａは、図１５のステップＳ７０１〜Ｓ７１１の処理において、ステップＳ７０１ではｍ＝２とし、ステップＳ７１１では、スイッチング素子ＳＷ２〜ＳＷｎをオンするものとし、番号ｍが２〜ｎの場合についてのみ、ステップＳ７０１〜Ｓ７１１の処理を実行して内部抵抗値ｒ（２）〜ｒ（ｎ）を算出するようにしてもよい。そして、個別抵抗算出部１０３ａは、内部抵抗値ｒ（１）を、上述の式（１０），（１１）を用いて算出してもよい。
【０２６４】
同様に、電池電源装置１ａは、図１６のステップＳ８０１〜Ｓ８１６の処理において、ステップＳ８０２では、ｍ＝１のときのみスイッチング素子ＳＷ２〜ＳＷｎをオフさせ、ｍ＝２〜ｎのときはそのままステップＳ８０２を実行し、ステップＳ８１６ではスイッチング素子ＳＷ２〜ＳＷｎをオンさせることによって、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出するようにしてもよい。
【０２６５】
同様に、電池電源装置１ａは、図１７のステップＳ９０１〜Ｓ９１６の処理において、ステップＳ９０１ではｍ＝ｎ＋１とし、ステップＳ９０８ではｍ＝ｎ＋１か否かを判定し、ステップＳ９１０ではｍ＝ｍ−１とし、ステップＳ９１６ではスイッチング素子ＳＷ２〜ＳＷｎをオンさせることによって、内部抵抗値ｒ（１）〜ｒ（ｎ）を算出するようにしてもよい。
【０２６６】
なお、内部抵抗検出回路４ａは、ステップＳ２、Ｓ１０１〜Ｓ１１５、及びＳ４０１〜Ｓ５１６を実行しない構成としてもよい。あるいは、内部抵抗検出回路４ａは、ステップＳ３、Ｓ２０１〜Ｓ２１４及びＳ５２１〜Ｓ５２４、Ｓ６０１〜Ｓ６１５及びＳ５２１〜Ｓ５２４を実行しない構成としてもよい。あるいは、内部抵抗検出回路４ａは、ステップＳ４、Ｓ３０１〜Ｓ３１０、Ｓ７０１〜Ｓ７１１、Ｓ８０１〜Ｓ９１６を実行しない構成としてもよい。あるいは、内部抵抗検出回路４ａは、ステップＳ６を実行しない構成としてもよい。あるいは、内部抵抗検出回路４ａは、ステップＳ７、Ｓ８を実行しない構成としてもよい。
【０２６７】
また、充放電制御部２１が外部装置２に設けられる例を示したが、例えば、電池電源装置１，１ａが、充放電制御部２１を備える構成としてもよい。
【産業上の利用可能性】
【０２６８】
本発明に係る内部抵抗検出回路、及びこれを備える電池電源装置は、携帯型パーソナルコンピュータやデジタルカメラ、携帯電話機等の電子機器、電気自動車やハイブリッドカー等の車両、ハイブリッドエレベータ、太陽電池や発電装置と二次電池とを組み合わされた電源システム、無停電源装置等の電池搭載装置、システムにおいて、好適に利用することができる。
【符号の説明】
【０２６９】
１，１ａ  電池電源装置
２  外部装置
３，３ａ  電池電源システム
４，４ａ  内部抵抗検出回路
５，５ａ  電池モジュール
６  電流検出部
７，Ｚ，Ｚ１〜Ｚｎ  電圧検出部
Ｘ，Ｘ１〜Ｘｎ  温度センサ
１０  制御部
１１，２４  通信部
１５，１６，１７，２５，２６，２７  接続端子
２１  充放電制御部
２２  発電装置
２３  負荷装置
４１  スイッチング部
４２  電流制限部
４３  スイッチング素子
４４  抵抗
５１  単電池
５２，５３  配線
１０１  放電制御部
１０２  充電制御部
１０３，１０３ａ  個別抵抗算出部
１０４  抵抗算出部
１０５  個別電流算出部
１０６  全体制限値算出部
１０７  記憶部
１１１  検出部
１１２  倍率算出部
１１３  内部抵抗値取得部
Ｂ，Ｂ１〜Ｂｎ，Ｂｍ  二次電池
Ｉ  全体電流
Ｉ（１）〜Ｉ（ｎ）  電流値
Ｉ１，Ｉ２，Ｉ３  電流値
Ｉｃｃ  電流値
Ｉｃｌｉｍ  充電上限値
Ｉｌｉｍ（１）〜Ｉｌｉｍ（ｎ）  電流上限値
Ｉｌｉｍ＿ｔｏｔａｌ  全体制限値
Ｌ  回帰直線
ｒ（１）〜ｒ（ｎ）  内部抵抗値
Ｒｂ  部分抵抗値
Ｒｃ  合成抵抗値
ｒｅ  内部抵抗値
Ｒｍｏｄ  抵抗値
Ｒｐ  第２部分抵抗値
Ｒｓ  第１部分抵抗値
Ｒｔｏｔａｌ  全体抵抗値
ＳＷ，ＳＷ１〜ＳＷｎ  スイッチング素子
Ｔ，Ｔ１〜Ｔｎ  温度
Ｖ  全体電圧
Ｖ１，Ｖ２，Ｖ３  電圧値
Ｖｅｎｄ  放電終止電圧
【図１】
0005857229.tif 000010
【図２】
0005857229.tif 000011
【図３】
0005857229.tif 000012
【図４】
0005857229.tif 000013
【図５】
0005857229.tif 000014
【図６】
0005857229.tif 000015
【図７】
0005857229.tif 000016
【図８】
0005857229.tif 000017
【図９】
0005857229.tif 000018
【図１０】
0005857229.tif 000019
【図１１】
0005857229.tif 000020
【図１２】
0005857229.tif 000021
【図１３】
0005857229.tif 000022
【図１４】
0005857229.tif 000023
【図１５】
0005857229.tif 000024
【図１６】
0005857229.tif 000025
【図１７】
0005857229.tif 000026
【図１８】
0005857229.tif 000027
【図１９】
0005857229.tif 000028
【図２０】
0005857229.tif 000029
【図２１】
0005857229.tif 000030
【図２２】
0005857229.tif 000031
【図２３】
0005857229.tif 000032
【図２４】
0005857229.tif 000033
【図２５】
0005857229.tif 000034