(57)【要約】【課題】電池を満充電や完全に放電することなく、より正確に電池の満充電容量（Ａｈf）を検出する。【解決手段】満充電容量検出方法は、充電電流と放電電流の積算値から電池の容量変化値を演算する容量変化検出工程と、電池の第１の開放電圧と第２の開放電圧を検出する開放電圧検出工程と、第１の開放電圧から電池の第１の残容量を、第２の開放電圧から電池の第２の残容量を判定する残容量判定工程と、第１の残容量と第２の残容量の差から残容量変化値を演算する残容量変化値演算工程と、残容量変化値と容量変化値から電池の満充電容量を演算する満充電容量演算工程とからなる。満充電容量検出方法は、容量変化値と、残容量変化値と、第１の開放電圧と第２の開放電圧との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態において、容量変化値と残容量変化値から電池の満充電容量を演算する。【選択図】図８
2012105492.tif 000002
【特許請求の範囲】
【請求項１】
所定のタイミングで充放電される電池の充電電流と放電電流の積算値から電池の容量変化値（δＡｈ）を演算する容量変化検出工程と、
容量変化値（δＡｈ）を検出する前後のタイミングにおいて電池の第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）を検出する開放電圧検出工程と、
この開放電圧検出工程で検出される第１の開放電圧（ＶＯＣＶ１）から電池の第１の残容量（ＳＯＣ１［％］）を判定すると共に、第２の開放電圧（ＶＯＣＶ２）から電池の第２の残容量（ＳＯＣ２［％］）を判定する残容量判定工程と、
この残容量判定工程で判定される第１の残容量（ＳＯＣ１［％］）と第２の残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を演算する残容量変化値演算工程と、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から電池の満充電容量（Ａｈf）を演算する満充電容量演算工程とからなる電池の満充電容量検出方法であって、
前記容量変化値（δＡｈ）と、前記残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態において、
前記容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量（Ａｈf）を演算する電池の満充電容量検出方法。
【請求項２】
前記満充電容量演算工程において、下記の式に基づいて電池の満充電容量（Ａｈf）を演算する請求項１に記載される電池の満充電容量検出方法。
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
【請求項３】
前記容量変化値（δＡｈ）を設定値に比較して、容量変化値（δＡｈ）が設定値よりも大きい状態において、
前記容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量（Ａｈf）を演算する請求項１又は２に記載される電池の満充電容量検出方法。
【請求項４】
前記残容量変化値（δＳＯＣ［％］）を設定値に比較して、残容量変化値（δＳＯＣ［％］）が設定値よりも大きな状態において、
前記容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量（Ａｈf）を演算する請求項１又は２に記載される電池の満充電容量検出方法。
【請求項５】
第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差を設定値に比較して、電圧差が設定値よりも大きな状態において、
前記容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量（Ａｈf）を演算する請求項１又は２に記載される電池の満充電容量検出方法。
【請求項６】
前記残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から検出される検出満充電容量（Ａｈf１）と、先に検出している以前の満充電容量（Ａｈf２）とから、以下の式で電池の満充電容量（Ａｈf）を演算する請求項１に記載される電池の満充電容量検出方法。
満充電容量（Ａｈf）＝ウエイト１×検出満充電容量（Ａｈf１）＋ウエイト２×以前の満充電容量（Ａｈf２）
ただし、ウエイト１＋ウエイト２＝１とする。
【請求項７】
前記ウエイト１とウエイト２とを、容量変化値（δＡｈ）で変化させると共に、容量変化値（δＡｈ）が多くなるにしたがって、ウエイト１を大きくする請求項６に記載される電池の満充電容量検出方法。
【請求項８】
前記ウエイト１とウエイト２とを、残容量変化値（δＳＯＣ［％］）で変化させると共に、残容量変化値（δＳＯＣ［％］）が大きくなるにしたがって、ウエイト１を大きくする請求項６に記載される電池の満充電容量検出方法。
【請求項９】
前記ウエイト１とウエイト２とを、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差とで変化させると共に、電圧差が大きくなるにしたがって、ウエイト１を大きくする請求項６に記載される電池の満充電容量検出方法。
【請求項１０】
前記ウエイト１とウエイト２とを、容量変化値（δＡｈ）を検出するタイミングで変化させると共に、タイミングが長くなるにしたがって、ウエイト１を大きくする請求項６に記載される電池の満充電容量検出方法。
【請求項１１】
前記容量変化値（δＡｈ）と、前記残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の全てが、あらかじめ設定している設定値以下である状態において、
電池温度を検出して、検出される電池温度から電池の劣化度［％］を演算すると共に、この電池の劣化度［％］と、電池の初期満充電容量（Ａｈf０）と、先に検出している以前の満充電容量（Ａｈf２）とから、電池の満充電容量（Ａｈf）を演算する請求項１に記載される電池の満充電容量検出方法。
【請求項１２】
前記第１の検出タイミングと前記第２の検出タイミングを、電池に電流が流れないタイミングとする請求項１ないし１１のいずれかに記載される電池の満充電容量検出方法。
【請求項１３】
前記第１の検出タイミングと第２の検出タイミングとが変動する時間間隔である請求項１ないし１２のいずれかに記載される電池の満充電容量検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、充放電するにしたがって実質的に満充電できる容量が小さくなる電池の満充電容量を検出する方法に関する。
【背景技術】
【０００２】
電池は、充放電を繰り返すにしたがって、実質的に満充電できる満充電容量（Ａｈf）が経時的に減少する。満充電容量（Ａｈf）は、満充電した電池を完全に放電するまでの容量である。電池は、過充電や過放電によって著しく劣化する特性があるので、満充電容量（Ａｈf）に対して所定の残容量（ＳＯＣ［％］）の範囲で使用することで劣化を少なくできる。このため、過充電や過放電を防止するために、経時的に減少する満充電容量（Ａｈf）を正確に検出することが大切である。検出する満充電容量（Ａｈf）に誤差があると、検出した満充電容量（Ａｈf）に対して所定の割合の残容量（ＳＯＣ［％］）となるように充放電をコントロールしても、電池が過充電や過放電される領域まで充放電が行われてしまい、劣化するからである。たとえば、車両用の電池は、５０％を中心とする所定範囲の残容量となるように、充放電をコントロールしている。残容量（ＳＯＣ［％］）は、満充電容量（Ａｈf）を基準に決定されるので、満充電容量（Ａｈf）に誤差があると、５０％を中心とする決められた範囲に残容量（ＳＯＣ［％］）を制御できなくなる。【０００３】
たとえば、満充電容量（Ａｈf）を１０Ａｈとする電池が５Ａｈの容量となるまで放電されると残容量（ＳＯＣ［％］）は５０％となるが、満充電容量（Ａｈf）が５Ａｈに減少した電池では、電池の容量（Ａｈ）が５Ａｈとなると残容量（ＳＯＣ［％］）は１００％となる。したがって、電池の容量（Ａｈ）が５Ａｈを中心として充放電するように制御しても、１０Ａｈから５Ａｈまで満充電容量（Ａｈf）が半減すると、残容量（ＳＯＣ［％］）は１００％を中心に充放電されてしまい、過充電状態となって著しく劣化する。とくに、車両用の電源装置は、電池の残容量（ＳＯＣ［％］）を５０％を中心とする範囲にコントロールして、充電も放電も可能な状態とすることが大切である。それは、電池を放電して車両の速度を加速し、充電して回生制動で減速するからである。【０００４】
車両に搭載される電源装置のみでなく、たとえば太陽電池の電力で充電される電源装置も、大電力を充電するために多数の電池が使用される。この用途の電源装置も、多数の電池を備えることから、電池の劣化を少なくして寿命を長くすることが大切である。したがって、電池の満充電容量（Ａｈf）を正確に検出して、過充電や過放電を防止することが大切である。【０００５】
電池の満充電容量（Ａｈf）は、完全に放電した電池を満充電するまでの充電容量を積算して検出できる。また、満充電した電池を完全に放電するまでの放電容量を積算しても満充電容量（Ａｈf）は検出できる。これらの方法は、電池の満充電容量（Ａｈf）を正確に検出できるが、電池の使用環境を著しく制限する欠点がある。それは、電池を完全に放電された状態にすると、この電池から電力を取り出すことができず、また、満充電された状態にあると、電池に電力を供給できなくなるからである。たとえば、車両に搭載される電池は、電池を放電してモータで車両の速度を加速し、また、車両にブレーキをかけて減速するときに電池を発電機で充電して回生制動するので、電池が完全に放電された状態になると電池で車両の速度を加速できず、また、電池が満充電された状態にあると回生制動で電池を充電できなくなる。車両に限らず、満充電容量（Ａｈf）を検出するために電池を完全に放電すると、放電に時間がかかるばかりでなく、放電された状態では電池を全く使用できなくなる欠点がある。さらに、電池は満充電と過放電の領域で劣化しやすくなる性質があるので、満充電容量（Ａｈf）の検出のために電池を完全に放電された状態と、満充電された状態とする方法は、満充電容量（Ａｈf）の検出が電池を劣化させる原因となる。【０００６】
この欠点を解消する方法として、電池の充電容量の累積量から電池が劣化する程度を検出して、満充電容量（Ａｈf）が減少する値を検出する方法が開発されている。（特許文献１参照）さらに、特許文献１は、電池の保存温度と残容量をパラメーターとして満充電容量の減少率を検出する方法も記載している。【０００７】
特許文献１の方法は、電池を完全に放電し、また、満充電することなく満充電容量を検出できる。このため、電池の使用環境を制限することなく満充電容量を検出できる。しかしながら、この方法は、充電容量の累積値や保存温度及び残容量から満充電容量がどの程度減少するかを推定するので、常に電池の満充電容量を正確に検出するのが難しい欠点がある。それは、電池の劣化が種々の外的条件により複雑に変化するからである。【０００８】
本発明者は、この欠点を解決することを目的として、充放電される電池の充電電流と放電電流の積算値から電池の容量変化値（δＡｈ）と、この容量変化値（δＡｈ）を検出するタイミングの前後で電池の開放電圧（ＶＯＣＶ）を検出して、各々の開放電圧（ＶＯＣＶ）から残容量変化値（δＳＯＣ［％］）を検出し、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から、下記の式に基づいて電池の満充電容量（Ａｈf）を演算する方法を開発した。（特許文献２参照）【０００９】
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００２−２３６１５４号公報
【特許文献２】特開２００８−２４１３５８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
以上の満充電容量検出方法は、電池を完全に放電したり満充電したりすることなく、電池の満充電容量を検出できる特徴がある。それは、充放電される電池の充電電流と放電電流の積算値から電池の容量変化値（δＡｈ）と、そのタイミングにおける電池の残容量変化値（δＳＯＣ［％］）とを検出して、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から電池の満充電容量（Ａｈf）を演算するからである。しかしながら、この方法は常に正しく電池の満充電容量（Ａｈf）を検出するのが難しい。満充電容量（Ａｈf）を正確に検出できない状態で、電池の満充電容量（Ａｈf）を補正すると、補正された電池の満充電容量（Ａｈf）の誤差が大きくなって、つねに正確に電池の満充電容量（Ａｈf）を検出できなくなる欠点がある。【００１２】
本発明は、さらに以上の欠点を解決することを目的に開発されたものである。本発明の重要な目的は、電池を満充電したり完全に放電したりすることなく、より正確に電池の満充電容量（Ａｈf）を検出できる満充電容量検出方法を提供することにある。
【課題を解決するための手段及び発明の効果】
【００１３】
本発明の満充電容量検出方法は、所定のタイミングで充放電される電池の充電電流と放電電流の積算値から電池の容量変化値（δＡｈ）を演算する容量変化検出工程と、
【００１４】
容量変化値（δＡｈ）を検出する前後のタイミングにおいて電池の第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）を検出する開放電圧検出工程と、
【００１５】
この開放電圧検出工程で検出される第１の開放電圧（ＶＯＣＶ１）から電池の第１の残容量（ＳＯＣ１［％］）を判定すると共に、第２の開放電圧（ＶＯＣＶ２）から電池の第２の残容量（ＳＯＣ２［％］）を判定する残容量判定工程と、
【００１６】
この残容量判定工程で判定される第１の残容量（ＳＯＣ１［％］）と第２の残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を演算する残容量変化値演算工程と、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から電池の満充電容量（Ａｈf）を演算する満充電容量演算工程とからなる。
【００１７】
さらに、本発明の電池の満充電容量検出方法は、容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態において、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算する。
【００１８】
以上の満充電容量検出方法は、電池を満充電したり完全に放電したりすることなく、より正確に電池の満充電容量（Ａｈf）を検出できる特徴がある。それは、以上の満充電容量検出方法が、容量変化値（δＡｈ）、残容量変化値（δＳＯＣ［％］）、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態においてのみ、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算するからである。
【００１９】
開放電圧（ＶＯＣＶ）から電池の残容量［ＳＯＣ（％）］を推定する方法は、開放電圧（ＶＯＣＶ）に対する残容量［ＳＯＣ（％）］を常に正確に特定するのが難しい。それは、充放電される電池の種々の条件が、開放電圧（ＶＯＣＶ）に対する残容量［ＳＯＣ（％）］を変動させる原因となるからである。開放電圧（ＶＯＣＶ）から残容量［ＳＯＣ（％）］を推定する方法は、開放電圧（ＶＯＣＶ）が同じであっても、電池の現実の残容量［ＳＯＣ（％）］が異なることがある。したがって、開放電圧（ＶＯＣＶ）から残容量［ＳＯＣ（％）］を推定し、推定される残容量［ＳＯＣ（％）］をひとつのパラメーターとして電池の満充電容量（Ａｈf）を検出すると、開放電圧（ＶＯＣＶ）に対する残容量［ＳＯＣ（％）］の誤差が、検出される満充電容量（Ａｈf）の誤差の原因となる。開放電圧（ＶＯＣＶ）に対する残容量［ＳＯＣ（％）］の誤差は、プラス側とマイナス側の両方に変動するので、残容量［ＳＯＣ（％）］の差から残容量変化値（δＳＯＣ［％］）を検出すると、誤差が累積されることがある。とくに、充放電される電池の容量変化値（δＡｈ）が小さく、開放電圧（ＶＯＣＶ）の変化の少ない状態で、各々の開放電圧（ＶＯＣＶ）から残容量［ＳＯＣ（％）］を推定して、残容量変化値（δＳＯＣ［％］）を検出すると、誤差が相当に大きくなることがある。それは、各々の開放電圧（ＶＯＣＶ）から推定される残容量［ＳＯＣ（％）］に、プラス側とマイナス側とに変化する誤差があるので、残容量変化値（δＳＯＣ［％］）の差には誤差が累積されることがあるからである。
【００２０】
図１は残容量変化値（δＳＯＣ［％］）が小さい状態と、大きい状態とで残容量変化値（δＳＯＣ［％］）に対する誤差が変化する状態を示している。この図の（ａ）は残容量変化値（δＳＯＣ［％］）が小さい状態を示し、（ｂ）は残容量変化値（δＳＯＣ［％］）が大きい状態を示している。この図から明らかなように、残容量変化値（δＳＯＣ［％］）が大きくなると、残容量変化値（δＳＯＣ［％］）に対する誤差の割合は小さくなる。残容量変化値（δＳＯＣ［％］）は、（ａ）と（ｂ）に示すように、最小値のδＳＯＣ［％］ｍｉｎから最大値のδＳＯＣ［％］ｍａｘまで変化する。したがって、残容量変化値（δＳＯＣ［％］）に対する誤差は、（δＳＯＣ［％］ｍａｘ−δＳＯＣ［％］ｍｉｎ）／（δＳＯＣ［％］）となり、分母の残容量変化値（δＳＯＣ［％］）が大きくなると、誤差は小さくなる。
【００２１】
以上の満充電容量検出方法は、残容量変化値（δＳＯＣ［％］）の誤差の割合が小さくなる状態でのみ、電池の満充電容量（Ａｈf）を検出するので、より正確に満充電容量（Ａｈf）を検出できる特徴が実現される。
【００２２】
本発明の電池の満充電容量検出方法は、満充電容量演算工程において、下記の式に基づいて電池の満充電容量を演算することができる。
【００２３】
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
【００２４】
本発明の電池の満充電容量検出方法は、容量変化値（δＡｈ）を設定値に比較して、容量変化値（δＡｈ）が設定値よりも大きい状態において、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算することができる。
【００２５】
また、本発明の電池の満充電容量検出方法は、残容量変化値（δＳＯＣ［％］）を設定値に比較して、残容量変化値（δＳＯＣ［％］）が設定値よりも大きな状態において、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算することもできる。
【００２６】
さらに、本発明の満充電容量検出方法は、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差を設定値に比較して、電圧差が設定値よりも大きな状態において、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算することができる。
【００２７】
さらに、本発明の満充電容量検出方法は、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から検出される検出満充電容量（Ａｈf１）と、先に検出している以前の満充電容量（Ａｈf２）とから、以下の式で電池の満充電容量（Ａｈf）を検出することができる。
【００２８】
満充電容量（Ａｈf）＝ウエイト１×検出満充電容量（Ａｈf１）＋ウエイト２×以前の満充電容量（Ａｈf２）
【００２９】
ただし、ウエイト１＋ウエイト２＝１とする。
【００３０】
以上の満充電容量検出方法は、以前の満充電容量（Ａｈf２）を考慮しながら電池の満充電容量（Ａｈf）を検出するのでより正確に満充電容量（Ａｈf）を検出できる。
【００３１】
さらに、本発明の満充電容量検出方法は、ウエイト１とウエイト２を、容量変化値（δＡｈ）で変化させると共に、容量変化値（δＡｈ）が大きくなるにしたがって、ウエイト１を大きくすることができる。
【００３２】
この方法は、容量変化値（δＡｈ）が大きくなるにしたがって、すなわち、より正確に検出される容量変化値（δＡｈ）から検出される電池の満充電容量（Ａｈf）のウエイトを大きくして、電池の満充電容量（Ａｈf）を書き換えるので、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００３３】
さらに、本発明の満充電容量検出方法は、ウエイト１とウエイト２とを、残容量変化値（δＳＯＣ［％］）で変化させると共に、残容量変化値（δＳＯＣ［％］）が大きくなるにしたがって、ウエイト１を大きくすることもできる。
【００３４】
この満充電容量検出方法は、残容量変化値（δＳＯＣ［％］）が大きくなるしたがって、すなわちより正確に検出される残容量変化値（δＳＯＣ［％］）から検出される電池の満充電容量（Ａｈf１）のウエイトを大きくして、電池の満充電容量（Ａｈf）を書き換えるので、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００３５】
また、本発明の満充電容量検出方法は、ウエイト１とウエイト２とを、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差とで変化させると共に、電圧差が大きくなるにしたがって、ウエイト１を大きくすることもできる。この方法は、電圧差が大きくなる状態で検出される検出される満充電容量（Ａｈf１）、すなわちより正確に検出される電池の満充電容量（Ａｈf１）のウエイトを大きくして、電池の満充電容量（Ａｈf）を書き換えるので、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００３６】
さらにまた、本発明の満充電容量検出方法は、ウエイト１とウエイト２を、容量変化値（δＡｈ）を検出するタイミングで変化させると共に、タイミングが長くなるにしたがって、ウエイト１を大きくすることもできる。
【００３７】
この方法は、容量変化値（δＡｈ）を検出するタイミングが長い状態で検出される容量変化値（δＡｈ１）、すなわちより正確に検出される電池の満充電容量（Ａｈf１）のウエイトを大きくして、電池の満充電容量（Ａｈf）を書き換えるので、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００３８】
さらにまた、本発明の満充電容量検出方法は、前記容量変化値（δＡｈ）と、前記残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の全てが、あらかじめ設定している設定値以下である状態において、電池温度を検出して、検出される電池温度から電池の劣化度［％］を演算すると共に、この電池の劣化度［％］と、電池の初期満充電容量（Ａｈf０）と、先に検出している以前の満充電容量（Ａｈf２）とから、電池の満充電容量（Ａｈf）を演算することができる。
【００３９】
第１の検出タイミングと第２の検出タイミングは、電池に電流が流れないタイミングとすることができ、また、第１の検出タイミングと第２の検出タイミングとを、変動する時間間隔とすることもできる。
【図面の簡単な説明】
【００４０】
【図１】残容量変化値（δＳＯＣ［％］）の大きさによって、誤差が異なることを示す図である。
【図２】本発明の一実施例にかかる電池の満充電容量検出方法に使用する電源装置の回路図である。
【図３】電池の残容量−開放電圧特性を示すグラフである。
【図４】電池の特定の検出電圧において、充放電電流に対する開放電圧特性を示すグラフである。
【図５】容量変化値（δＡｈ）に対するウエイト１とウエイト２を示す図である。
【図６】残容量変化値（δＳＯＣ［％］）に対するウエイト１とウエイト２を示す図である。
【図７】最低電圧と最大電圧の電圧差に対する開放電圧（ＶＯＣＶ）の比率に対するウエイト１とウエイト２を示す図である。
【図８】本発明の他の実施例にかかる電池の満充電容量検出方法を示すフローチャートである。
【図９】本発明の他の実施例にかかる電池の満充電容量検出方法を示すフローチャートである。
【図１０】本発明の他の実施例にかかる電池の満充電容量検出方法を示すフローチャートである。
【発明を実施するための形態】
【００４１】
以下、本発明の実施例を図面に基づいて説明する。ただし、以下に示す実施例は、本発明の技術思想を具体化するための電池の満充電容量検出方法を例示するものであって、本発明は満充電容量検出方法を以下に特定しない。さらに、この明細書は、特許請求の範囲に示される部材を、実施例の部材に特定するものでは決してない。
【００４２】
図２は、本発明の電池の満充電容量検出方法に使用する電源装置の回路図である。この電源装置は、車両を走行させるモータに電力を供給する装置に使用され、また、昼間に太陽電池で電池を充電して、充電された電力を昼間や夜間に出力する装置に使用される。この電源装置は、充電できる電池１と、電池１の充放電の電流を検出する電流検出部２と、電池１の電圧を検出する電圧検出部３と、電池１の温度を検出する温度検出部４と、電流検出部２の出力信号を演算して電池１を充放電する電流を積算して電池１の容量（Ａｈ）を検出する容量演算部５と、電圧検出部３の出力信号から電池１の残容量（ＳＯＣ［％］）を判定する残容量検出部６と、この残容量検出部６と容量演算部５の出力信号で電池１の満充電容量を検出する満充電容量検出部７と、満充電容量検出部７で検出される満充電容量でもって電池１の残容量（ＳＯＣ［％］）を補正して正確な残容量（ＳＯＣ［％］）を検出する残容量補正回路８と、電池１を電源として使用する本体側の車両や太陽電池装置に、電池情報を伝送する通信処理部９とを備える。
【００４３】
電池１は、リチウムイオン二次電池またはリチウムポリマー電池である。ただ、電池は、ニッケル水素電池やニッケルカドミウム電池などの充電できる電池を用いることができる。電池１は、ひとつまたは複数の二次電池を直列または並列に接続している。
【００４４】
電池１の充放電の電流を検出する電流検出部２は、電池１と直列に接続している電流検出抵抗１０の両端に発生する電圧を検出して充電電流と放電電流を検出する。電流検出部２は、電流検出抵抗１０の両端に誘導される電圧をアンプ（図示せず）で増幅し、アンプの出力信号であるアナログ信号をＡ／Ｄコンバータ（図示せず）でデジタル信号に変換して出力する。電流検出抵抗１０は、電池１に流れる電流に比例した電圧が発生するので、電圧で電流を検出することができる。アンプは、＋−の信号を増幅できるオペアンプで、出力電圧の＋−で充電電流と放電電流を識別する。電流検出部２は、容量演算部５と残容量検出部６と通信処理部９に電池１の電流信号を出力する。
【００４５】
電圧検出部３は、電池１の電圧を検出し、検出したアナログ信号をＡ／Ｄコンバータ（図示せず）でデジタル信号に変換して出力する。電圧検出部３は、残容量検出部６と通信処理部９に検出した電池１の電圧信号を出力する。複数の素電池を直列に接続している電源装置にあっては、各々の電池電圧を検出してその平均値を出力することもできる。また、複数の素電池を直列に接続して電池モジュールとし、さらに複数の電池モジュールを直列に接続している電源装置にあっては、電池モジュールの平均値を電池電圧として出力する。
【００４６】
温度検出部４は、電池１の温度を検出し、検出した信号をＡ／Ｄコンバータ（図示せず）でデジタル信号に変換して出力する。温度検出部４は、容量演算部５と残容量検出部６と通信処理部９とに温度信号を出力する。
【００４７】
容量演算部５は、電流検出部２から入力されるデジタル信号の電流信号を演算して電池１の放電できる容量（Ａｈ）を演算する。この容量演算部５は、電池１の充電容量から放電容量を減算して、電池１の放電できる容量（Ａｈ）を電流の積算値（Ａｈ）として演算する。充電容量は、電池１の充電電流の積算値で、あるいはこれに充電効率をかけて演算される。放電容量は、放電電流の積算値で演算される。容量演算部５は、温度検出部４から入力される信号で、充電容量と放電容量の積算値を補正して正確に容量を演算することができる。
【００４８】
残容量検出部６は、電池１の開放電圧（ＶＯＣＶ）から電池１の残容量（ＳＯＣ［％］）を、判定する。残容量検出部６は、電圧検出部３から入力される電池１の電圧信号と、電流検出部２から入力される電流信号から電池１の開放電圧（ＶＯＣＶ）を検出し、あるいは電流検出部２から入力される充放電の電流値が０となるタイミングにおいて、電圧検出部３から入力される電圧値を開放電圧（ＶＯＣＶ）として検出する。さらに、残容量検出部６は、検出した電池１の開放電圧（ＶＯＣＶ）から電池１の残容量（ＳＯＣ［％］）を判定するために、電池１の開放電圧（ＶＯＣＶ）に対する残容量（ＳＯＣ［％］）を、関数又はルックアップテーブルとしてメモリ１１に記憶している。図３は、電池の開放電圧（ＶＯＣＶ）に対する残容量（ＳＯＣ［％］）を示すグラフである。メモリ１１は、このグラフで示す開放電圧−残容量の特性を関数として、あるいはテーブルとして記憶している。残容量検出部６は、メモリ１１に記憶される関数やテーブルから、開放電圧（ＶＯＣＶ）に対する残容量（ＳＯＣ［％］）を判定する。
【００４９】
残容量検出部６は、必ずしも充放電の電流が０になるタイミングにおいて、開放電圧（ＶＯＣＶ）を検出する必要はなく、電流検出部２で検出される電池１の充放電の電流から電池１の開放電圧（ＶＯＣＶ）を演算して検出することもできる。この残容量検出部６は、電池１の検出電圧（ＶＣＣＶ）と充放電の電流に対する開放電圧（ＶＯＣＶ）を、関数又はテーブルとしてメモリ１１に記憶している。図４は、特定の検出電圧（ＶＣＣＶ）における、電池の充放電電流に対する電池の開放電圧（ＶＯＣＶ）を示すグラフである。メモリ１１は、このグラフで示す電流−開放電圧の特性を関数として、あるいはテーブルとして記憶している。残容量検出部６は、メモリ１１に記憶される関数やテーブルから、検出電圧と充放電の電流に対する開放電圧（ＶＯＣＶ）を演算し、さらに、演算された開放電圧（ＶＯＣＶ）から電池１の残容量（ＳＯＣ［％］）を判定する。この残容量検出部６は、電池１の充放電の状態にかかわらず、いいかえると、電池１に充放電の電流が流れる状態においても、電池１の開放電圧（ＶＯＣＶ）を検出できる。
【００５０】
容量演算部５と残容量演算部６は、第１の検出タイミングと第２の検出タイミングとで電池の容量（Ａｈ）と残容量［ＳＯＣ（％）］を検出する。第１の検出タイミングと第２の検出タイミングは、好ましくは電池に電流が流れないタイミングとする。検出タイミングは、あらかじめ設定している設定時間よりも長い時間、電池に電流が流れない状態が継続した後に設定することで、開放電圧（ＶＯＣＶ）に対する残容量［ＳＯＣ（％）］をより正確に検出できる。設定時間は、好ましくは３０分とする。ただし、設定時間は、例えば１分ないし１０時間、好ましくは１０分ないし３時間とすることもできる。設定時間を長くして、開放電圧（ＶＯＣＶ）に対する残容量［ＳＯＣ（％）］をより正確に検出できる。第１の検出タイミングの設定時間を、第２の検出タイミングの設定時間よりも長くすることで、第１の検出タイミングにおける開放電圧（ＶＯＣＶ）に対する残容量［ＳＯＣ（％）］をより正確に検出できる。また、第２の検出タイミングの設定時間を第１の検出タイミングの設定時間よりも短くすることで、充電や放電を停止した後、速やかに開放電圧（ＶＯＣＶ）を検出して残容量［ＳＯＣ（％）］を検出できる。
【００５１】
ただし、検出電圧と充放電の電流値から開放電圧（ＶＯＣＶ）を演算して残容量（ＳＯＣ［％］）を判定する方法においては、第１の検出タイミングと第２の検出タイミングは、電池１の充放電の電流が０になるタイミングに特定することなく、検出タイミングを電池に電流が流れているタイミングとすることができる。
【００５２】
第１の検出タイミングと第２の検出タイミングの時間間隔は、あらかじめ設定している一定の時間とすることなく、変動する時間間隔とすることで、第１の検出タイミングと第２の検出タイミングとを最適なタイミングに設定して、電池の満充電容量（Ａｈf）をより正確に検出できる。たとえば、プラグインハイブリッドカーにあっては、充電ステーションで充電を開始する直前のタイミングを第１の検出タイミングとし、充電ステーションで充電を終了したタイミングを第２の検出タイミングとする。充電ステーションで電池を充電する状態は、ほとんどの場合、充電時間が長くなるので容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）が大きく、電池の満充電容量（Ａｈf）を正確に検出できる確率が高くなる。
【００５３】
ハイブリッドカーにあっては、イグニッションスイッチ１２をオンに切り換えるタイミングであって、電池１の負荷電流を遮断するタイミングを第１の検出タイミングとし、イグニッションスイッチ１２をオフに切り換えた後を第２の検出タイミングとする。ハイブリッドカーにおける第１の検出タイミングは、イグニッションスイッチ１２がオンに切り換えられる前後における所定の範囲、たとえば、イグニッションスイッチ１２がオンに切り換えられる２時間前から、オンに切り換えた後３秒以内、好ましくは１秒以内とするタイミングとすることができる。第１の検出タイミングを、イグニッションスイッチ１２がオンに切り換えられる前とする場合は、電圧検出部３が、前回、電池１の電圧を検出したタイミングを第１の検出タイミングとし、このとき検出されてメモリ１１に記憶される電池電圧を第１の開放電圧（ＶＯＣＶ１）とすることができる。また、第２の検出タイミングは、イグニッションスイッチ１２をオフに切り換えた後であって、電池１の電圧が安定したタイミング、たとえばイグニッションスイッチ１２をオフに切り換えた後、２時間経過後とする。
【００５４】
太陽電池の電源に使用される電池にあっては、第１の検出タイミングと第２の検出タイミングとを、太陽電池で充電されず、また負荷に放電されないタイミングとする。ただし、この用途に使用される電池は、特定の時間に、あるいは一定の時間間隔で第１の検出タイミングと第２の検出タイミングとを特定することもできる。
【００５５】
電池１は、充放電されて、完全に放電されるまで放電できる容量（Ａｈ）と残容量（ＳＯＣ［％］）を変化させる。電池は、放電されて電池の放電できる容量（Ａｈ）と残容量（ＳＯＣ［％］）は減少し、充電されて電池の放電できる容量（Ａｈ）と残容量（ＳＯＣ［％］）は増加する。第１の検出タイミングから第２の検出タイミングまでに変化する電池の放電できる容量（Ａｈ）は、容量演算部５で検出される。容量演算部５は、第１の検出タイミングから第２の検出タイミングまでの時間帯において、電池１の充電電流と放電電流を積算して容量変化値（δＡｈ）を検出し、容量変化値（δＡｈ）から放電できる容量（Ａｈ）を演算する。一方、第１の検出タイミングから第２の検出タイミングまでに変化する電池の残容量（ＳＯＣ［％］）は、残容量検出部６で検出される。残容量検出部６は、第１の検出タイミングにおける電池１の電圧から特定される第１の残容量（ＳＯＣ１［％］）と、第２の検出タイミングにおける電池の電圧から特定される第２の残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を検出する。
【００５６】
容量演算部５は、第１の検出タイミングから第２の検出タイミングまでの時間帯における充放電の電流を積算して容量変化値（δＡｈ）を検出し、容量変化値（δＡｈ）から変化する電池の放電できる容量（Ａｈ）を検出する。残容量検出部６は変化する電池の開放電圧（ＶＯＣＶ）から残容量（ＳＯＣ［％］）を検出する。満充電容量検出部７は、変化する電池の容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）から満充電容量（Ａｈf）を演算する。満充電容量検出部７は、電池１の容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）とを検出するために、第１の検出タイミングと第２の検出タイミングとの間において、充放電される電池１の容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）とを演算する。
【００５７】
満充電容量検出部７は、残容量検出部６で検出される電池１の残容量（ＳＯＣ［％］）の変化、すなわち第１の検出タイミングから第２の検出タイミングまでに変化する残容量（ＳＯＣ［％］）の変化値（δＳＯＣ［％］）と、容量演算部５で検出される電池１の放電できる容量（Ａｈ）の変化、すなわち容量変化値（δＡｈ）から、下記の式で電池１の満充電容量（Ａｈf）を検出する。
【００５８】
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
【００５９】
ただし、満充電容量検出部は、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）とからつねに満充電容量（Ａｈf）を検出するのではない。満充電容量検出部は、第１の検出タイミングから第２の検出タイミングまでに検出される容量変化値（δＡｈ）をあらかじめ記憶している設定値に比較し、容量変化値（δＡｈ）が設定値よりも大きい状態においてのみ、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算する。この満充電容量検出部が記憶している設定値は、定格満充電容量（Ａｈf）の例えば１０％以上とする。
【００６０】
満充電容量検出部は、容量変化値（δＡｈ）でなく、第１の検出タイミングから第２の検出タイミングまでに検出される残容量変化値（δＳＯＣ［％］）を設定値に比較して、残容量変化値（δＳＯＣ［％］）が設定値よりも大きな状態に限って、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算することもできる。この満充電容量検出部は、残容量変化値（δＳＯＣ［％］）の設定値を記憶している。設定値は、たとえば１０％以上とする。
【００６１】
さらに、満充電容量検出部は、第１の検出タイミングにおける第１の開放電圧（ＶＯＣＶ１）と第２の検出タイミングにおけ第２の開放電圧（ＶＯＣＶ２）との電圧差を設定値に比較して、電圧差が設定値よりも大きな状態においてのみ、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算することもできる。満充電容量検出部は、電圧差を設定値にして記憶している。設定値は、最低電圧と最高電圧との差の２０％以上とする。
【００６２】
以上のように、満充電容量検出部は、第１の検出タイミングから第２の検出タイミングまでの容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態においてのみ、容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から電池の満充電容量を演算する。
【００６３】
満充電容量検出部７は、以上のように特定の条件を満足する状態に限って、第１の検出タイミングで検出される電池の第１の放電できる容量（Ａｈ１）と第２の検出タイミングで検出される電池の第２の放電できる容量（Ａｈ２）との差から容量変化値（δＡｈ）を演算し、あるいは、第１の検出タイミングから第２の検出タイミングまでの間に充放電される電流の積算値から容量変化値（δＡｈ）を演算する。また、満充電容量検出部７は、第１の検出タイミングで検出される電池の第１の開放電圧（ＶＯＣＶ１）から特定される残容量（ＳＯＣ１［％］）と、第２の検出タイミングで検出される第２の開放電圧（ＶＯＣＶ２）から特定される残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を演算する。
【００６４】
満充電容量検出部７は、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から検出される検出満充電容量（Ａｈf１）と、先に検出している以前の満充電容量（Ａｈf２）とから、以下の式で電池の満充電容量（Ａｈf）をより正確に検出する。
【００６５】
満充電容量（Ａｈf）＝ウエイト１×検出満充電容量（Ａｈf１）＋ウエイト２×以前の満充電容量（Ａｈf２）
【００６６】
ただし、ウエイト１＋ウエイト２＝１とする。
【００６７】
以上の満充電容量検出部７は、残容量変化値（δＳＯＣ［％］）と容量変化値（δＡｈ）から検出した最新の検出満充電容量（Ａｈf１）を電池の正しい満充電容量（Ａｈf）とせず、以前に検出した満充電容量（Ａｈf２）を補正して電池の満充電容量（Ａｈf）を決定することで、より正確に電池の満充電容量（Ａｈf）を検出する。
【００６８】
ウエイト１は、第１の検出タイミングから第２の検出タイミングまでの時間帯における容量変化値（δＡｈ）で変化させる。すなわち、容量変化値（δＡｈ）が大きくなるにしたがって、ウエイト１を大きくする。この方法は、容量変化値（δＡｈ）を定格容量又は満充電容量（Ａｈf）の１０％とする状態で、ウエイト１を０．１とし、容量変化値（δＡｈ）が１０％よりも小さくなるにしたがって、ウエイト１を小さく、また１０％よりも大きくなるにしたがってウエイト１を大きくする。図５は、容量変化値（δＡｈ）に対するウエイト１とウエイト２を示している。容量変化値（δＡｈ）に対するウエイト１とウエイト２は、あらかじめメモリに記憶している。この方法は、容量変化値（δＡｈ）が大きくなって、検出満充電容量（Ａｈf）の精度が高くなるにしたがって、ウエイト１を大きくして、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００６９】
また、ウエイト１は、第１の検出タイミングから第２の検出タイミングまでの残容量変化値（δＳＯＣ［％］）で変化させることもできる。満充電容量検出部は、残容量変化値（δＳＯＣ［％］）が大きくなるにしたがって、ウエイト１を大きくし、たとえば、残容量変化値（δＳＯＣ［％］）が１０％となる状態で、ウエイト１を０．１とし、残容量変化値（δＳＯＣ［％］）が１０％よりも小さくなるにしたがって、ウエイト１を小さく、また１０％よりも大きくなるにしたがってウエイト１を大きくする。図６は、残容量変化値（δＳＯＣ［％］）に対するウエイト１とウエイト２を示している。この方法は、残容量変化値（δＳＯＣ［％］）が大きくなって、検出満充電容量（Ａｈf）の精度が高くなるにしたがって、ウエイト１を大きくして、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００７０】
さらに、満充電容量検出部は、ウエイト１を、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差で変化させることもできる。この満充電容量検出部は、開放電圧（ＶＯＣＶ）の電圧差が大きくなるにしたがって、ウエイト１を大きくし、たとえば、開放電圧（ＶＯＣＶ）の電圧差が、最低電圧と最大電圧の電圧差の１０パーセントとなる状態で、ウエイト１を０．１とし、電圧差が１０％よりも小さくなるにしたがって、ウエイト１を小さく、また１０％よりも大きくなるにしたがってウエイト１を大きくする。図７は、最低電圧と最大電圧の電圧差に対する開放電圧（ＶＯＣＶ）の比率に対するウエイト１とウエイト２を示している。この方法は、電圧差が大きくなって、検出満充電容量（Ａｈf）の精度が高くなるにしたがって、ウエイト１を大きくして、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００７１】
さらにまた、満充電容量検出部は、ウエイト１を、第１の検出タイミングから第２の検出タイミングまでの時間帯の長さ変化させることができる。この満充電容量検出部は、時間帯が長くなるにしたがって、ウエイト１を大きく、たとえば、時間帯が１時間となる状態で、ウエイト１を０．１とし、時間帯の長さが１時間よりも短くなるにしたがって、ウエイト１を小さく、また１時間よりも大きくなるにしたがってウエイト１を大きくする。この方法は、第１の検出タイミングから第２の検出タイミングまでの時間帯が長くなって、検出満充電容量（Ａｈf）の精度が高くなるにしたがって、ウエイト１を大きくして、より正確に電池の満充電容量（Ａｈf）を検出できる。
【００７２】
残容量補正回路８は、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）で補正して、電池１の正確な残容量（ＳＯＣ［％］）を検出する。すなわち、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）と、容量演算部５で演算される電池１の放電できる容量（Ａｈ）から以下の式で残容量（ＳＯＣ［％］）を検出する。
【００７３】
残容量（ＳＯＣ［％］）＝［放電できる容量（Ａｈ）／満充電容量（Ａｈf）］×１００
【００７４】
残容量補正回路８は、以上の式で演算される電池１の残容量（ＳＯＣ［％］）と、残容量検出部６が電池電圧から検出する残容量（ＳＯＣ［％］）との両方から、電池１の残容量を正確に検出することができる。残容量補正回路８は、たとえば、満充電容量（Ａｈf）と放電できる容量（Ａｈ）から演算する残容量（ＳＯＣ［％］）と、電池電圧から判定する残容量（ＳＯＣ［％］）を平均して、電池１の正確な残容量（ＳＯＣ［％］）を演算する。また、電池電圧や残容量（ＳＯＣ［％］）によって、満充電容量（Ａｈf）と放電できる容量（Ａｈ）から演算される残容量（ＳＯＣ［％］）と、電池電圧から判定される残容量（ＳＯＣ［％］）を重みつけして電池１の正確な残容量（ＳＯＣ［％］）を演算することもできる。
【００７５】
通信処理部９は、残容量補正回路８で検出される残容量（ＳＯＣ［％］）、満充電容量検出部７で検出する満充電容量（Ａｈf）、残容量検出部６で検出された残容量（ＳＯＣ［％］）、電圧検出部３で検出した電池電圧、電流検出部２で検出した電流値、温度検出部４で検出した温度等の電池情報を、通信回線１３を介して電源装置を装着している機器に伝送する。
【００７６】
さらに、電源装置は、演算された満充電容量（Ａｈf）に基づいて、電池１の劣化度を判定することもできる。この電源装置は、演算された満充電容量（Ａｈf）が、電池の定格容量（Ａｈs）に対してどの程度減少したかによって電池１の劣化度を判定する。この電源装置は、電池の満充電容量（Ａｈf）や、定格容量に対する比率（Ａｈf／Ａｈs）から電池の劣化度を検出する関数やテーブルを記憶しており、記憶される関数やテーブルに基づいて電池の劣化度を検出する。
【００７７】
以上の電源装置は、以下に示す工程で電池の満充電容量（Ａｈf）を検出する。
［容量変化検出工程］
【００７８】
満充電容量検出部７が、第１の検出タイミングと第２の検出タイミングとの間において、充放電される電池１の充電電流と放電電流の積算値から電池１の容量変化値（δＡｈ）を演算する。
【００７９】
この工程において、満充電容量検出部７は、容量演算部５が第１の検出タイミングで検出する電池の第１の容量（Ａｈ１）と第２の検出タイミングで検出する電池の第２の容量（Ａｈ２）との差から容量変化値（δＡｈ）を演算し、あるいは、第１の検出タイミングから第２の検出タイミングまでの間に充放電される電流の積算値として容量演算部５が演算する容量変化値（δＡｈ）を検出する。
［開放電圧検出工程］
【００８０】
残容量検出部６が、第１の検出タイミングにおける電池１の第１の開放電圧（ＶＯＣＶ１）と第２の検出タイミングにおける電池１の第２の開放電圧（ＶＯＣＶ２）を検出する。残容量検出部６は、電池１の充放電の電流が０になるタイミングにおいて開放電圧（ＶＯＣＶ）を検出し、あるいは、充放電の電流から開放電圧（ＶＯＣＶ）を演算して検出する。
［残容量判定工程］
【００８１】
さらに、残容量検出部６は、開放電圧検出工程で検出される第１の開放電圧（ＶＯＣＶ１）から電池１の第１の残容量（ＳＯＣ１［％］）を判定し、第２の開放電圧（ＶＯＣＶ２）から電池１の第２の残容量（ＳＯＣ２［％］）を判定する。残容量検出部６は、メモリ１１に記憶する関数又はテーブルに基づいて開放電圧（ＶＯＣＶ）から電池１の残容量（ＳＯＣ［％］）を判定する。
［残容量変化値演算工程］
【００８２】
満充電容量検出部７が、残容量判定工程で判定される第１の残容量（ＳＯＣ１［％］）と第２の残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を演算する。
［満充電容量演算工程］
【００８３】
さらに、満充電容量検出部７は、第１の検出タイミングから第２の検出タイミングまでの容量変化値（δＡｈ）が設定値よりも大きいか、あるいは残容量変化値（δＳＯＣ［％］）が設定値よりも大きいか、あるいは又第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差が設定値よりも大きいかを判定し、容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）と、電圧差の何れかひとつ、あるいは複数の数値が設定値よりも大きい状態に限って、容量変化検出工程で検出される容量変化値（δＡｈ）と、残容量変化値演算工程で演算される残容量変化値（δＳＯＣ［％］）とから、下記の式で電池１の満充電容量（Ａｈf）を演算する。
【００８４】
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
【００８５】
さらに、満充電容量検出部７は、第１の検出タイミングから第２の検出タイミングまでの容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の全てが設定値以下であるとき、電池温度を検出し、検出された電池温度から電池１の劣化度［％］を演算し、演算された電池１の劣化度［％］から電池１の満充電容量（Ａｈf）を演算する。電池温度は、温度検出部４において検出される。満充電容量検出部７は、温度検出部４で検出される電池温度を電池１の劣化度合いに換算する温度係数を記憶しており、この温度係数に基づいて電池１の劣化度［％］を演算する。電池１の劣化は、電池温度が高いほど進行する。したがって、電池温度から電池１の劣化度合いに換算する温度係数は、負の係数であって、電池１が高い温度で充放電されるにしたがって絶対値が大きくなるように特定される。この温度係数は、例えば、関数やテーブルとしてメモリ等に記憶される。
【００８６】
満充電容量検出部７は、電池１の一定時間（例えば１秒）ごとの電池温度（例えば、最大電池温度）を検出し、検出された電池温度から換算される温度係数と、電池１がその温度にあった時間との積である劣化係数を演算し、この劣化係数を、第１の検出タイミングから第２の検出タイミングまで加算して、加算劣化係数を演算する。この劣化係数が加算される第１の検出タイミングから第２の検出タイミングまでの時間は、例えば最大４時間をインターバルとする所定の時間とすることができる。さらに、満充電容量検出部７は、電池１の初期満充電容量（Ａｈf０）と、先に検出している以前の満充電容量（Ａｈf２）、すなわち、前回の満充電容量（Ａｈf２）と、演算された加算劣化係数とから、以下の式で電池１の劣化度［％］を演算する。
【００８７】
劣化度［％］＝［｛（前回の満充電容量（Ａｈf２）／初期満充電容量（Ａｈf０））×１００｝２＋加算劣化係数］１／２
【００８８】
さらに、満充電容量検出部７は、電池温度から演算された劣化度［％］と、初期満充電容量（Ａｈf０）と、以前の満充電容量（Ａｈf２）である前回の満充電容量（Ａｈf２）とから、以下の式で電池１の満充電容量（Ａｈf）を演算する。
【００８９】
満充電容量（Ａｈf２）＝前回の満充電容量（Ａｈf２）×ａ＋初期満充電容量（Ａｈf０）×劣化量［％］／１００×（１−ａ）
【００９０】
ただし、ａ、ｂは電池の種類や条件等により特定されるウエイトであって、ａ＋ｂ＝１である。
【００９１】
プラグインハイブリッドカーの電源装置に使用される電池は、以下のステップで、図８のフローチャートに基づいて電池の満充電容量を検出する。
［ｎ＝１のステップ］
【００９２】
充電ステーションでの充電が開始される状態にあるかどうかを判定する。充電ステーションで充電が開始される状態にあっては、充電を開始する以前の電池に電流が流れない状態を第１の検出タイミングとする。
［ｎ＝２のステップ］
【００９３】
残容量検出部６が、第１の検出タイミングにおける電池１の第１の開放電圧（ＶＯＣＶ１）を検出する。
［ｎ＝３のステップ］
【００９４】
残容量検出部６は、検出された第１の開放電圧（ＶＯＣＶ１）から電池１の第１の残容量（ＳＯＣ１［％］）を関数やテーブルから判定する。
［ｎ＝４のステップ］
【００９５】
満充電容量検出部７が、第１の検出タイミングにおける電池１の第１の容量（Ａｈ１）を検出する。満充電容量検出部７は、たとえば、前回、検出した電池１の満充電容量（Ａｈf）に、ｎ＝３のステップで判定した電池１の第１の残容量（ＳＯＣ１［％］）をかけて、電池１の第１の容量（Ａｈ１）を演算して検出することができる。
［ｎ＝５のステップ］
【００９６】
充電ステーションでの充電が完了したかどうかを判定する。充電ステーションでの充電が終了するまでこのステップをループする。
［ｎ＝６のステップ］
【００９７】
充電ステーションでの充電が終了すると、所定の時間経過後を第２の検出タイミングとして、残容量検出部６が、電池１の第２の開放電圧（ＶＯＣＶ２）を検出する。
［ｎ＝７のステップ］
【００９８】
残容量検出部６は、検出された第２の開放電圧（ＶＯＣＶ２）から電池１の第２の残容量（ＳＯＣ２［％］）を関数やテーブルから判定する。
［ｎ＝８のステップ］
【００９９】
満充電容量検出部７が、第２の検出タイミングにおける電池１の第２の容量（Ａｈ２）を検出する。電池１の第２の容量（Ａｈ２）は、容量演算部５によって、充放電される電池１の充電電流と放電電流の積算値から演算される。
［ｎ＝９のステップ］
【０１００】
満充電容量検出部７が、第１の検出タイミングにおける電池１の第１の容量（Ａｈ１）と第２の検出タイミングにおける電池１の第２の容量（Ａｈ２）の差から容量変化値（δＡｈ）を演算する。
［ｎ＝１０のステップ］
【０１０１】
電池１の第１の残容量（ＳＯＣ１［％］）と第２の残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を演算する。
［ｎ＝１１のステップ］
【０１０２】
満充電容量検出部７が、検出される容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態にあるかどうかを判定する。
【０１０３】
これらの何れかが設定値よりも大きいと、ｎ＝１２〜１３のステップに進み、設定値以下であると、ｎ＝１４〜１６のステップに進む。
［ｎ＝１２のステップ］
【０１０４】
満充電容量検出部７が、演算された容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から、以下の式で電池１の満充電容量（Ａｈf）を演算する。
【０１０５】
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
［ｎ＝１３のステップ］
【０１０６】
残容量補正回路８が、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）を基準として、容量演算部５で検出される放電できる容量（Ａｈ）から残容量（ＳＯＣ［％］）を演算する。演算された残容量（ＳＯＣ［％］）と、残容量検出部６で電池電圧から検出される残容量（ＳＯＣ［％］）の両方から電池１の残容量（ＳＯＣ［％］）を演算する。これにより、より正確な残容量（ＳＯＣ［％］）を演算できる。
［ｎ＝１４のステップ］
【０１０７】
満充電容量検出部７は、温度検出部４で検出される電池温度に基づいて、電池１の劣化度［％］を演算する。満充電容量検出部７は、電池温度から特定される温度係数と、電池１がその温度にあった時間との積である劣化係数を演算し、この劣化係数を、第１の検出タイミングから第２の検出タイミングまで加算して、加算劣化係数を演算する。さらに、さらに、満充電容量検出部７は、電池の初期満充電容量（Ａｈf０）と前回の満充電容量（Ａｈf１）、及び加算劣化係数から、以下の式で電池１の劣化度［％］を演算する。
【０１０８】
劣化度［％］＝［｛（前回の満充電容量（Ａｈf２）／初期満充電容量（Ａｈf０））×１００｝２＋加算劣化係数］１／２
［ｎ＝１５のステップ］
【０１０９】
満充電容量検出部７は、電池温度から演算された劣化度［％］と、初期満充電容量（Ａｈf０）と、以前の満充電容量（Ａｈf２）である前回の満充電容量（Ａｈf２）とから、以下の式で電池１の満充電容量（Ａｈf）を演算する。
【０１１０】
満充電容量（Ａｈf２）＝前回の満充電容量（Ａｈf２）×ａ＋初期満充電容量（Ａｈf０）×劣化量［％］／１００×（１−ａ）
【０１１１】
ただし、ａ、ｂは電池の種類や条件等により特定されるウエイトであって、ａ＋ｂ＝１である。
［ｎ＝１６のステップ］
【０１１２】
残容量補正回路８が、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）を基準として、容量演算部５で検出される放電できる容量（Ａｈ）から残容量（ＳＯＣ［％］）を演算する。演算された残容量（ＳＯＣ［％］）と、残容量検出部６で電池電圧から検出される残容量（ＳＯＣ［％］）の両方から電池１の残容量（ＳＯＣ［％］）を演算する。これにより、より正確な残容量（ＳＯＣ［％］）を演算できる。
【０１１３】
ハイブリッドカーの電源装置は、以下のステップで、図９のフローチャートに基づいて電池の満充電容量を検出する。
［ｎ＝１のステップ］
【０１１４】
イグニッションスイッチ１２がオンに切り換えられたかどうかを判定する。イグニッションスイッチ１２がオンに切り換えられるまで、このステップをループする。
［ｎ＝２のステップ］
【０１１５】
イグニッションスイッチ１２がオンに切り換えられると、その直後であって、電池の負荷電流が遮断される状態を第１の検出タイミングとして、残容量検出部６が、電池１の第１の開放電圧（ＶＯＣＶ１）を検出する。
［ｎ＝３のステップ］
【０１１６】
残容量検出部６は、検出された第１の開放電圧（ＶＯＣＶ１）から電池１の第１の残容量（ＳＯＣ１［％］）を関数やテーブルから判定する。
［ｎ＝４のステップ］
【０１１７】
満充電容量検出部７が、第１の検出タイミングにおける電池１の第１の容量（Ａｈ１）を検出する。満充電容量検出部７は、たとえば、前回、検出した電池１の満充電容量（Ａｈf）に、ｎ＝３のステップで判定した電池１の第１の残容量（ＳＯＣ１［％］）をかけて、電池１の第１の容量（Ａｈ１）を演算して検出することができる。
［ｎ＝５のステップ］
【０１１８】
イグニッションスイッチ１２がオフに切り換えられたかどうかを判定する。イグニッションスイッチ１２がオフに切り換えられるまで、このステップをループする。
［ｎ＝６のステップ］
【０１１９】
イグニッションスイッチ１２がオフに切り換えられると、所定の時間経過後を第２の検出タイミングとして、残容量検出部６が、電池１の第２の開放電圧（ＶＯＣＶ２）を検出する。
［ｎ＝７のステップ］
【０１２０】
残容量検出部６は、検出された第２の開放電圧（ＶＯＣＶ２）から電池１の第２の残容量（ＳＯＣ２［％］）を関数やテーブルから判定する。
［ｎ＝８のステップ］
【０１２１】
満充電容量検出部７が、第２の検出タイミングにおける電池１の第２の容量（Ａｈ２）を検出する。電池１の第２の容量（Ａｈ２）は、容量演算部５によって、充放電される電池１の充電電流と放電電流の積算値から演算される。
［ｎ＝９のステップ］
【０１２２】
満充電容量検出部７が、第１の検出タイミングにおける電池１の第１の容量（Ａｈ１）と第２の検出タイミングにおける電池１の第２の容量（Ａｈ２）の差から容量変化値（δＡｈ）を演算する。
［ｎ＝１０のステップ］
【０１２３】
満充電容量検出部７が、電池１の第１の残容量（ＳＯＣ１［％］）と第２の残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を演算する。
［ｎ＝１１のステップ］
【０１２４】
満充電容量検出部７が、検出される容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態にあるかどうかを判定する。
【０１２５】
これらの何れかが設定値よりも大きいと、ｎ＝１２〜１３のステップに進み、設定値以下であると、ｎ＝１４〜１６のステップに進む。
［ｎ＝１２のステップ］
【０１２６】
満充電容量検出部７が、演算された容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から、以下の式で電池１の満充電容量（Ａｈf）を演算する。
【０１２７】
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
［ｎ＝１３のステップ］
【０１２８】
残容量補正回路８が、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）を基準として、容量演算部５で検出される放電できる容量（Ａｈ）から残容量（ＳＯＣ［％］）を演算する。演算された残容量（ＳＯＣ［％］）と、残容量検出部６で電池電圧から検出される残容量（ＳＯＣ［％］）の両方から電池１の残容量（ＳＯＣ［％］）を演算する。これにより、より正確な残容量（ＳＯＣ［％］）を演算できる。
［ｎ＝１４のステップ］
【０１２９】
満充電容量検出部７は、温度検出部４で検出される電池温度に基づいて、電池１の劣化度［％］を演算する。満充電容量検出部７は、電池温度から特定される温度係数と、電池１がその温度にあった時間との積である劣化係数を演算し、この劣化係数を、第１の検出タイミングから第２の検出タイミングまで加算して、加算劣化係数を演算する。さらに、さらに、満充電容量検出部７は、電池の初期満充電容量（Ａｈf０）と前回の満充電容量（Ａｈf１）、及び加算劣化係数から、以下の式で電池１の劣化度［％］を演算する。
【０１３０】
劣化度［％］＝［｛（前回の満充電容量（Ａｈf２）／初期満充電容量（Ａｈf０））×１００｝２＋加算劣化係数］１／２
［ｎ＝１５のステップ］
【０１３１】
満充電容量検出部７は、電池温度から演算された劣化度［％］と、初期満充電容量（Ａｈf０）と、以前の満充電容量（Ａｈf２）である前回の満充電容量（Ａｈf２）とから、以下の式で電池１の満充電容量（Ａｈf）を演算する。
【０１３２】
満充電容量（Ａｈf２）＝前回の満充電容量（Ａｈf２）×ａ＋初期満充電容量（Ａｈf０）×劣化量［％］／１００×（１−ａ）
【０１３３】
ただし、ａ、ｂは電池の種類や条件等により特定されるウエイトであって、ａ＋ｂ＝１である。
［ｎ＝１６のステップ］
【０１３４】
残容量補正回路８が、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）を基準として、容量演算部５で検出される放電できる容量（Ａｈ）から残容量（ＳＯＣ［％］）を演算する。演算された残容量（ＳＯＣ［％］）と、残容量検出部６で電池電圧から検出される残容量（ＳＯＣ［％］）の両方から電池１の残容量（ＳＯＣ［％］）を演算する。これにより、より正確な残容量（ＳＯＣ［％］）を演算できる。
【０１３５】
さらに、太陽電池の電源装置の電池は、以下のステップで、図１０のフローチャートで示すようにして、電池の満充電容量を検出することもできる。
［ｎ＝１、２のステップ］
【０１３６】
電池１に電流が流れない状態を検出し、このタイミングを第１の検出タイミングとして、残容量検出部６が、電池１の第１の開放電圧（ＶＯＣＶ１）を検出する。電池１に電流が流れない状態は、たとえば、太陽電池が電池を充電せず、かつ電池が放電されない状態である。
［ｎ＝３のステップ］
【０１３７】
残容量検出部６は、検出された第１の開放電圧（ＶＯＣＶ１）から電池１の第１の残容量（ＳＯＣ１［％］）を関数やテーブルから判定する。
［ｎ＝４のステップ］
【０１３８】
満充電容量検出部７が、第１の検出タイミングにおける電池１の第１の容量（Ａｈ１）を検出する。電池１の第１の容量（Ａｈ１）は、容量演算部５によって、充放電される電池１の充電電流と放電電流を積算して演算される。
［ｎ＝５、６のステップ］
【０１３９】
第１の検出タイミングでタイマー（図示せず）がカウントを開始する。このタイマーは、第１の検出タイミングと第２の検出タイミングの時間を記憶しており、記憶している時間が経過するとタイムアップする。
［ｎ＝７のステップ］
【０１４０】
タイマーがタイムアップすると、このタイミングを第２の検出タイミングとして、残容量検出部６が、電池１の第２の開放電圧（ＶＯＣＶ２）を検出する。電池の開放電圧（ＶＯＣＶ２）は、電流が流れない状態にあっては電池１の電圧とし、電流が流れる状態にあっては、検出電圧と電流から演算する。
［ｎ＝８のステップ］
【０１４１】
残容量検出部６は、検出された第２の開放電圧（ＶＯＣＶ２）から電池１の第２の残容量（ＳＯＣ２［％］）を関数やテーブルから判定する。
［ｎ＝９のステップ］
【０１４２】
満充電容量検出部７が、第２の検出タイミングにおける電池１の第２の容量（Ａｈ２）を検出する。電池１の第２の容量（Ａｈ２）は、容量演算部５によって、電池１の充放電の電流を積算して演算される。
［ｎ＝１０のステップ］
【０１４３】
満充電容量検出部７が、第１の検出タイミングにおける電池１の第１の容量（Ａｈ１）と第２の検出タイミングにおける電池１の第２の容量（Ａｈ２）の差から容量変化値（δＡｈ）を演算する。
［ｎ＝１１のステップ］
【０１４４】
満充電容量検出部７が、電池１の第１の残容量（ＳＯＣ１［％］）と第２の残容量（ＳＯＣ２［％］）の差から残容量変化値（δＳＯＣ［％］）を演算する。
［ｎ＝１２のステップ］
【０１４５】
満充電容量検出部７が、検出される容量変化値（δＡｈ）と、残容量変化値（δＳＯＣ［％］）と、第１の開放電圧（ＶＯＣＶ１）と第２の開放電圧（ＶＯＣＶ２）との電圧差の少なくとも何れかが、あらかじめ設定している設定値よりも大きな状態にあるかどうかを判定する。
【０１４６】
これらの何れかが設定値よりも大きいと、ｎ＝１３〜１４のステップに進み、設定値以下であると、ｎ＝１５〜１７のステップに進む。
［ｎ＝１４のステップ］
【０１４７】
満充電容量検出部７が、演算された容量変化値（δＡｈ）と残容量変化値（δＳＯＣ［％］）から、以下の式で電池１の満充電容量（Ａｈf）を演算する。
【０１４８】
Ａｈf＝δＡｈ／（δＳＯＣ［％］／１００）
［ｎ＝１５のステップ］
【０１４９】
残容量補正回路８が、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）を基準として、容量演算部５で検出される放電できる容量（Ａｈ）から残容量（ＳＯＣ［％］）を演算する。演算された残容量（ＳＯＣ［％］）と、残容量検出部６で電池電圧から検出される残容量（ＳＯＣ［％］）の両方から電池１の残容量（ＳＯＣ［％］）を演算する。これにより、より正確な残容量（ＳＯＣ［％］）を演算できる。
［ｎ＝１４のステップ］
【０１５０】
満充電容量検出部７は、温度検出部４で検出される電池温度に基づいて、電池１の劣化度［％］を演算する。満充電容量検出部７は、電池温度から特定される温度係数と、電池１がその温度にあった時間との積である劣化係数を演算し、この劣化係数を、第１の検出タイミングから第２の検出タイミングまで加算して、加算劣化係数を演算する。さらに、さらに、満充電容量検出部７は、電池の初期満充電容量（Ａｈf０）と前回の満充電容量（Ａｈf１）、及び加算劣化係数から、以下の式で電池１の劣化度［％］を演算する。
【０１５１】
劣化度［％］＝［｛（前回の満充電容量（Ａｈf２）／初期満充電容量（Ａｈf０））×１００｝２＋加算劣化係数］１／２
［ｎ＝１５のステップ］
【０１５２】
満充電容量検出部７は、電池温度から演算された劣化度［％］と、初期満充電容量（Ａｈf０）と、以前の満充電容量（Ａｈf２）である前回の満充電容量（Ａｈf２）とから、以下の式で電池１の満充電容量（Ａｈf）を演算する。
【０１５３】
満充電容量（Ａｈf２）＝前回の満充電容量（Ａｈf２）×ａ＋初期満充電容量（Ａｈf０）×劣化量［％］／１００×（１−ａ）
【０１５４】
ただし、ａ、ｂは電池の種類や条件等により特定されるウエイトであって、ａ＋ｂ＝１である。
［ｎ＝１６のステップ］
【０１５５】
残容量補正回路８が、満充電容量検出部７で検出される電池１の満充電容量（Ａｈf）を基準として、容量演算部５で検出される放電できる容量（Ａｈ）から残容量（ＳＯＣ［％］）を演算する。演算された残容量（ＳＯＣ［％］）と、残容量検出部６で電池電圧から検出される残容量（ＳＯＣ［％］）の両方から電池１の残容量（ＳＯＣ［％］）を演算する。これにより、より正確な残容量（ＳＯＣ［％］）を演算できる。
【符号の説明】
【０１５６】
１…電池
２…電流検出部
３…電圧検出部
４…温度検出部
５…容量演算部
６…残容量検出部
７…満充電容量検出部
８…残容量補正回路
９…通信処理部
１０…電流検出抵抗
１１…メモリ
１２…イグニッションスイッチ
１３…通信回線
【図１】
2012105492.tif 000003
【図２】
2012105492.tif 000004
【図３】
2012105492.tif 000005
【図４】
2012105492.tif 000006
【図５】
2012105492.tif 000007
【図６】
2012105492.tif 000008
【図７】
2012105492.tif 000009
【図８】
2012105492.tif 000010
【図９】
2012105492.tif 000011
【図１０】
2012105492.tif 000012
【国際調査報告】
2012105492.tif 000013
2012105492.tif 000014
2012105492.tif 000015