(57)【特許請求の範囲】
【請求項１】
充電式のバッテリのＳＯＣ（State Of Charge）を検出する方法であって、
（１）前記バッテリの充放電電流を積算することによりクーロンカウント値ＣＣを生成するステップと、
（２）ＳＯＣの値ＳＯＣ１を、
ＳＯＣ１＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００    …（１）
ただし、ＣＣＦＵＬＬは満充電に相当するクーロンカウント容量値
にもとづいて生成するステップと、
（３）補正ステップと、
を備え、
（３）前記補正ステップは、
（３−１）前記バッテリに関してあらかじめ規定されたＳＯＣとＯＣＶ（Open Circuit Voltage）の対応関係を示すＳＯＣ−ＯＣＶ特性にもとづき、前記値ＳＯＣ１に対応するＯＣＶの値ＯＣＶ１を生成するステップと、
（３−２）前記バッテリの電圧ＶＢＡＴを検出するステップと、
（３−３）前記値ＯＣＶ１と前記バッテリの電圧ＶＢＡＴの検出値ＶＢＡＴ１との差分ＶＤＲＯＰ１を生成するステップと、
（３−４）システムの最低動作電圧ＶＢＡＴ＿ＭＩＮより前記差分ＶＤＲＯＰ１に応じた電圧幅ΔＶ、高い値ＯＣＶ２を生成するステップと、
（３−５）前記ＳＯＣ−ＯＣＶ特性にもとづいて、前記値ＯＣＶ２に対応するＳＯＣの値ＳＯＣ２を生成するステップと、
（３−６）前記値ＳＯＣ２が残量ゼロに相当するものとして、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬ、前記ＳＯＣ−ＯＣＶ特性の少なくともひとつを修正するステップと、
を含むことを特徴とする方法。
【請求項２】
ΔＶ＝ＶＤＲＯＰ１であることを特徴とする請求項１に記載の方法。
【請求項３】
ＯＣＶとバッテリ電圧の差分ＶＤＲＯＰのＳＯＣ依存性をあらかじめ保持しておくステップと、
ＯＣＶの暫定値ＯＣＶ３＝ＶＢＡＴ＿ＭＩＮ＋ＶＤＲＯＰ１を計算するステップと、
ＯＣＶの暫定値ＯＣＶ３に対応するＳＯＣの暫定値ＳＯＣ３を生成するステップと、
値ＳＯＣ１における前記差分ＶＤＲＯＰ１および前記差分ＶＤＲＯＰのＳＯＣ依存性にもとづいて、値ＳＯＣ３における電圧降下ΔＶを計算するステップと、
をさらに備えることを特徴とする請求項１に記載の方法。
【請求項４】
（３−６）前記修正するステップは、前記クーロンカウント容量値ＣＣＦＵＬＬを
ＣＣＦＵＬＬ’＝ＣＣＦＵＬＬ×（１００−ＳＯＣ２）／１００    …（２）
により得られる新たな値ＣＣＦＵＬＬ’に修正することを特徴とする請求項１から３のいずれかに記載の方法。
【請求項５】
（３−６）前記修正するステップは、前記クーロンカウント値ＣＣを
ＣＣ’＝ＣＣ−（ＣＣＦＵＬＬ−ＣＣＦＵＬＬ’）      …（３）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項４に記載の方法。
【請求項６】
（３−６）前記修正するステップは、前記クーロンカウント値ＣＣを、
ＣＣ’＝ＣＣ−ＣＣＦＵＬＬ×ＳＯＣ２／１００      …（４）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項４に記載の方法。
【請求項７】
（３−６）前記修正するステップは、
ＳＯＣ’＝ＳＯＣ１×１００／（１００−ＳＯＣ２）      …（５）
により得られる新たな値ＳＯＣ’を、修正後のＳＯＣとすることを特徴とする請求項１から６のいずれかに記載の方法。
【請求項８】
（３−６）前記修正するステップは、前記クーロンカウント値ＣＣは修正しないことを特徴とする請求項４に記載の方法。
【請求項９】
（３−６）前記修正するステップは、
ＳＯＣ’＝｛ＣＣＦＵＬＬ−ＣＣ×１００／（１００−ＳＯＣ２）｝／ＣＣＦＵＬＬ×１００    …（６）
により得られる値ＳＯＣ’を、修正後のＳＯＣとすることを特徴とする請求項１から３のいずれかに記載の方法。
【請求項１０】
（３−６）前記修正するステップは、
前記クーロンカウント容量値ＣＣＦＵＬＬを修正せず、
前記クーロンカウント値ＣＣを、
ＣＣ’＝ＣＣ×１００／（１００−ＳＯＣ２）      …（７）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項１から３のいずれかに記載の方法。
【請求項１１】
（３−６）前記修正するステップは、前記クーロンカウント値ＣＣを
ＣＣ’＝ＣＣ×（１００−ＳＯＣ２）／１００      …（８）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項４に記載の方法。
【請求項１２】
（３−６）前記修正するステップは、前記ＳＯＣ−ＯＣＶ特性を、
ＳＯＣ’＝１００−（１００−ＳＯＣ）×１００／（１００−ＳＯＣ２）    …（９）
にしたがって補正することを特徴とする請求項１から３のいずれかに記載の方法。
【請求項１３】
前記ＳＯＣ−ＯＣＶ特性は、システムの最低動作電圧より低いＯＣＶの範囲を負のＳＯＣと対応付けることを特徴とする請求項１から１２のいずれかに記載の方法。
【請求項１４】
前記補正ステップは、前記バッテリの電圧が所定の電圧値より低いときに有効となることを特徴とする請求項１から１３のいずれかに記載の方法。
【請求項１５】
前記補正ステップは、ＳＯＣが所定値より低いときに有効となることを特徴とする請求項１から１３のいずれかに記載の方法。
【請求項１６】
前記補正ステップは、所定の周期ごとに間欠的に有効となることを特徴とする請求項１から１５のいずれかに記載の方法。
【請求項１７】
前記所定の周期は、１秒より長く、６０秒より短いことを特徴とする請求項１６に記載の方法。
【請求項１８】
充電式のバッテリのＳＯＣ（State Of Charge）を検出する残量検出回路であって、
前記バッテリの充放電電流を積算することによりクーロンカウント値ＣＣを生成するクーロンカウンタ回路と、
前記バッテリの電圧ＶＢＡＴを検出する電圧検出回路と、
式（１）にもとづいて、ＳＯＣの値ＳＯＣ１を計算するＳＯＣ演算部と、
ＳＯＣ１＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００    …（１）
ただし、ＣＣＦＵＬＬは、満充電に相当するクーロンカウント容量値
補正回路と、
を備え、
前記補正回路は、
前記バッテリに関してあらかじめ規定されたＳＯＣとＯＣＶ（Open Circuit Voltage）の対応関係を示すＳＯＣ−ＯＣＶ特性にもとづき、前記値ＳＯＣ１に対応するＯＣＶの値ＯＣＶ１を生成するステップと、
前記値ＯＣＶ１と前記電圧検出回路が検出した前記電圧の検出値ＶＢＡＴ１との差分ＶＤＲＯＰ１を生成するステップと、
システムの最低動作電圧ＶＢＡＴ＿ＭＩＮより前記差分ＶＤＲＯＰ１に応じた電圧幅ΔＶ、高い値ＯＣＶ２を生成するステップと、
前記ＳＯＣ−ＯＣＶ特性にもとづいて、前記値ＯＣＶ２に対応するＳＯＣの値ＳＯＣ２を生成するステップと、
前記値ＳＯＣ２が残量ゼロに相当するものとして、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬおよび前記ＳＯＣ−ＯＣＶ特性の少なくともひとつを修正するステップと、
を実行することを特徴とする残量検出回路。
【請求項１９】
ΔＶ＝ＶＤＲＯＰ１であることを特徴とする請求項１８に記載の残量検出回路。
【請求項２０】
前記補正回路は、
ＯＣＶとバッテリ電圧の差分ＶＤＲＯＰのＳＯＣ依存性を保持するステップと、
ＯＣＶの暫定値ＯＣＶ３＝ＶＢＡＴ＿ＭＩＮ＋ＶＤＲＯＰ１を計算するステップと、
ＯＣＶの暫定値ＯＣＶ３に対応するＳＯＣの値ＳＯＣ３を生成するステップと、
値ＳＯＣ１における前記差分ＶＤＲＯＰ１および前記差分ＶＤＲＯＰのＳＯＣ依存性にもとづいて、値ＳＯＣ３における電圧降下ΔＶを計算するステップと、
をさらに実行することを特徴とする請求項１８に記載の残量検出回路。
【請求項２１】
前記修正するステップは、前記クーロンカウント容量値ＣＣＦＵＬＬを
ＣＣＦＵＬＬ’＝ＣＣＦＵＬＬ×（１００−ＳＯＣ２）／１００    …（２）
により得られる新たな値ＣＣＦＵＬＬ’に修正することを特徴とする請求項１８から２０のいずれかに記載の残量検出回路。
【請求項２２】
前記修正するステップは、前記クーロンカウント値ＣＣを
ＣＣ’＝ＣＣ−（ＣＣＦＵＬＬ−ＣＣＦＵＬＬ’）      …（３）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項２１に記載の残量検出回路。
【請求項２３】
前記修正するステップは、前記クーロンカウント値ＣＣを、
ＣＣ’＝ＣＣ−ＣＣＦＵＬＬ×ＳＯＣ２／１００      …（４）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項２１に記載の残量検出回路。
【請求項２４】
前記修正するステップは、前記ＳＯＣ１を、
ＳＯＣ’＝ＳＯＣ１×１００／（１００−ＳＯＣ２）      …（５）
により得られる新たな値ＳＯＣ’に修正することを特徴とする請求項１８から２３のいずれかに記載の残量検出回路。
【請求項２５】
前記修正するステップは、前記クーロンカウント値ＣＣは修正しないことを特徴とする請求項１８から２０のいずれかに記載の残量検出回路。
【請求項２６】
前記修正するステップは、
ＳＯＣ’＝｛ＣＣＦＵＬＬ−ＣＣ×１００／（１００−ＳＯＣ２）｝／ＣＣＦＵＬＬ×１００    …（６）
により得られる値ＳＯＣ’を、修正後のＳＯＣとすることを特徴とする請求項１８から２０のいずれかに記載の残量検出回路。
【請求項２７】
前記修正するステップは、
前記クーロンカウント容量値ＣＣＦＵＬＬを修正せず、
前記クーロンカウント値ＣＣを、
ＣＣ’＝ＣＣ×１００／（１００−ＳＯＣ２）      …（７）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項１８から２０のいずれかに記載の残量検出回路。
【請求項２８】
前記修正するステップは、前記クーロンカウント値ＣＣを
ＣＣ’＝ＣＣ×（１００−ＳＯＣ２）／１００      …（８）
により得られる新たな値ＣＣ’に修正することを特徴とする請求項２１に記載の残量検出回路。
【請求項２９】
（３−６）前記修正するステップは、前記ＳＯＣ−ＯＣＶ特性を、
ＳＯＣ’＝１００−（１００−ＳＯＣ）×１００／（１００−ＳＯＣ２）    …（９）
にしたがって補正することを特徴とする請求項１８から２０のいずれかに記載の残量検出回路。
【請求項３０】
前記ＳＯＣ−ＯＣＶ特性は、システムの最低動作電圧より低いＯＣＶの範囲を負のＳＯＣと対応付けることを特徴とする請求項１８から２９のいずれかに記載の残量検出回路。
【請求項３１】
前記補正回路は、前記バッテリの電圧が所定の電圧値より低いときに有効となることを特徴とする請求項１８から３０のいずれかに記載の残量検出回路。
【請求項３２】
前記補正回路は、ＳＯＣが所定値より低いときに有効となることを特徴とする請求項１８から３０のいずれかに記載の残量検出回路。
【請求項３３】
前記補正回路は、所定の周期ごとに間欠的に有効となることを特徴とする請求項１８から３２のいずれかに記載の残量検出回路。
【請求項３４】
前記所定の周期は、１秒より長く、６０秒より短いことを特徴とする請求項３３に記載の残量検出回路。
【請求項３５】
充電式のバッテリと、
前記バッテリの状態を検出する請求項１８から３４のいずれかに記載の残量検出回路と、
を備えることを特徴とする電子機器。
【請求項３６】
充電式のバッテリと、
前記バッテリの状態を検出する請求項１８から３４のいずれかに記載の残量検出回路と、
を備えることを特徴とする自動車。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バッテリ管理システムに関する。
【背景技術】
【０００２】
携帯電話端末、デジタルカメラ、タブレット端末、携帯音楽プレイヤ、携帯ゲーム機器、ノート型コンピュータをはじめとするさまざまな電池駆動型の電子機器は、充電式のバッテリ（２次電池）を内蔵しており、システム制御や信号処理を行うＣＰＵ（Central Processing Unit）、液晶パネル、無線通信モジュール、その他のアナログ、デジタル回路などの電子回路は、バッテリからの電力供給を受けて動作する。
【０００３】
図１は、電池駆動型の電子機器のブロック図である。電子機器５００は、バッテリ５０２と、バッテリ５０２を充電する充電回路５０４と、を備える。充電回路５０４は、外部の電源アダプタやＵＳＢ（Universal Serial Bus）からの電源電圧ＶＡＤＰを受け、バッテリ５０２を充電する。
【０００４】
バッテリ５０２には、負荷５０８が接続される。バッテリ５０２に流れる電流ＢＡＴは、充電回路５０４からの充電電流ＩＣＨＧと負荷５０８に流れる負荷電流（放電電流）ＩＬＯＡＤの差分となる。
【０００５】
電池駆動型の電子機器では、バッテリの残量（充電状態：ＳＯＣ）の検出が欠かせない機能となっており、電子機器５００には、残量検出回路５０６が設けられる。残量検出回路５０６は、ヒューエルゲージＩＣ（Integrated Circuit）とも称される。残量検出回路５０６によるバッテリの残量の検出方法としては、（１）電圧法と、（２）クーロンカウント法（電荷積算法）の２つが主流となっている。残量検出回路５０６は、充電回路５０４に内蔵される場合もある。
【０００６】
電圧法では、開放状態（無負荷状態）においてバッテリの開放電圧（ＯＣＶ：Open Circuit Voltage）を測定し、ＯＣＶとＳＯＣの対応関係から残量を推定する。ＯＣＶは、バッテリが無負荷であり、かつ緩和状態でなければ測定することができず、したがって充放電中にそれを正確に測定することはできない。
【０００７】
クーロンカウント法では、バッテリに流れ込む充電電流およびバッテリから流れ出る放電電流（以下、充放電電流と総称する)を積算し、バッテリへの充電電荷量、放電電荷量を計算することで残量を推定する。クーロンカウント法によれば、電圧法と異なり、開放電圧が得られないバッテリの使用期間においても、残量を推定することができる。
【０００８】
図１の残量検出回路５０６は、クーロンカウント法によって、バッテリ５０２の残量を推定する。残量検出回路５０６は、クーロンカウンタ回路５１０と、ＳＯＣ演算部５１２と、を備える。クーロンカウンタ回路５１０は、バッテリ５０２の電流ＩＢＡＴを検出し、それを積算する。クーロンカウンタ回路５１０が生成するクーロンカウント値ＣＣは、以下の式で表される。
ＣＣ＝∫ＩＢＡＴｄｔ
厳密にはバッテリ電流ＩＢＡＴは時間的に離散的にサンプリングされ、以下の式で計算される。Δｔはサンプリング周期を示す。
ＣＣ＝Σ（Δｔ×ＩＢＡＴ）
この積算（積分）は、たとえばバッテリ５０２から流れ出る方向の電流ＩＢＡＴを正、バッテリ５０２に流れ込む方向の電流ＩＢＡＴを負として行われる。
【０００９】
ＳＯＣ演算部５１２は、クーロンカウント値ＣＣにもとづいて、バッテリ５０２のＳＯＣを演算する。ＳＯＣの演算には以下の式が用いられる。
ＳＯＣ［％］＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００
ＣＣＦＵＬＬは、満充電状態においてバッテリ５０２に蓄えられる電荷量（クーロンカウント値）を示す。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】米国特許第９，０３５，６１６Ｂ２号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明者は、図１の残量検出回路５０６について検討した結果、以下の課題を認識するに至った。ここでは充電については考えず、放電時の現象を説明する。図２は、ＯＣＶとＳＯＣの対応関係（ＳＯＣ−ＯＣＶ特性）ならびにバッテリ電圧ＶＢＡＴの変化を示す図である。
【００１２】
ここではリチウムイオンセルを例とすると、ＯＣＶ＝４．２Ｖのときが満充電状態であり、すなわちＳＯＣ＝１００％である。また負荷５０８を含むシステムが動作可能な最低動作電圧をＶＢＡＴ＿ＭＩＮとするとき、ＯＣＶ＝ＶＢＡＴ＿ＭＩＮのときにＳＯＣ＝０％である。中間的なＳＯＣについても、ＯＣＶと１対１で対応付けられる。
【００１３】
いま、満充電状態から負荷電流ＩＬＯＡＤが連続的、あるいは不連続的に流れると、図中、矢印で示す方向にＯＣＶが低下していく。このときの放電電流ＩＢＡＴが積算され、クーロンカウント値ＣＣにもとづいてＳＯＣが計算され、時間の経過とともにゼロに近づいていく。
【００１４】
図２には、ＯＣＶに加えて、バッテリ５０２から外部に取り出されるバッテリ電圧ＶＢＡＴが示される。バッテリ電圧ＶＢＡＴは、ＯＣＶよりもドロップしている。このドロップ量（電圧降下）ＶＤＲＯＰは、現在の負荷電流ＩＬＯＡＤ（すなわち瞬時値）に比例する成分に加えて、過去の負荷電流ＩＬＯＡＤの履歴にもとづく成分を含む。したがって負荷電流ＩＬＯＡＤがゼロとなった後も、直ちにゼロとなるわけではない。電圧降下ＶＤＲＯＰは、無負荷状態において、長い緩和時間（数時間のオーダー）を経てゼロに近づいていく。
【００１５】
図２に示すように、電圧降下ＶＤＲＯＰに起因して、ＯＣＶがＶＢＡＴ＿ＭＩＮまで低下するより前に、バッテリ電圧ＶＢＡＴがＶＢＡＴ＿ＭＩＮまで低下すると、システムがシャットダウンする。このとき、クーロンカウント法にもとづいて計算されるＳＯＣは、０よりも大きい値Ｘである。つまり電子機器５００のユーザは、残りＸ（％）と表示されていたにもかかわらず、システムがシャットダウンするという状況に遭遇する。
【００１６】
本発明は係る課題に鑑みてなされたものであり、そのある態様の例示的な目的のひとつは、バッテリの充電状態の検出精度を改善可能な方法および残量検出回路の提供にある。
【課題を解決するための手段】
【００１７】
本発明のある態様は、充電式のバッテリのＳＯＣ（State Of Charge）を検出する方法に関する。この方法は、以下の処理を含む。
（１）バッテリの充放電電流を積算することによりクーロンカウント値ＣＣを生成する。
（２）ＳＯＣの値ＳＯＣ１を、
ＳＯＣ１＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００    …（１）
にもとづいて生成する。ただし、ＣＣＦＵＬＬは満充電に相当するクーロンカウント容量値である。
さらにこの方法では、以下の（３）補正処理が行われる。
（３−１）バッテリに関してあらかじめ規定されたＳＯＣとＯＣＶ（Open Circuit Voltage）の対応関係（ＳＯＣ−ＯＣＶ特性）にもとづき、値ＳＯＣ１に対応するＯＣＶの値ＯＣＶ１を生成する。
（３−２）バッテリの電圧ＶＢＡＴ１を検出する。
（３−３）値ＯＣＶ１とバッテリの電圧ＶＢＡＴの検出値ＶＢＡＴ１との差分ＶＤＲＯＰ１を生成する。
（３−４）システムの最低動作電圧ＶＢＡＴ＿ＭＩＮより差分ＶＤＲＯＰ１に応じた電圧幅ΔＶ、高い値ＯＣＶ２を生成する。
（３−５）ＳＯＣ−ＯＣＶ特性にもとづいて、値ＯＣＶ２に対応するＳＯＣの値ＳＯＣ２を生成する。
（３−６）値ＳＯＣ２が残量ゼロ（０％）に相当するものとして、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬおよびＳＯＣ−ＯＣＶ特性の少なくともひとつを修正する。
【００１８】
この態様によると、その時々で変化する電圧降下ＶＤＲＯＰを考慮し、実際のバッテリ電圧ＶＢＡＴが最低動作電圧ＶＢＡＴ＿ＭＩＮまで低下したとき、すなわち、システムがシャットダウンするときにＳＯＣがゼロとなるように、クーロンカウント法にもとづく残量検出処理を補正することができ、ＳＯＣの検出精度を改善できる。
【００１９】
ΔＶ＝ＶＤＲＯＰ１であってもよい。ＯＣＶとバッテリ電圧の差分の、ＳＯＣ依存性が小さい場合に有効である。
【００２０】
ＯＣＶとバッテリ電圧の差分ＶＤＲＯＰのＳＯＣ依存性をあらかじめ保持しておいてもよく、ルックアップテーブルに保持してもよいし、演算式として保持してもよい。
補正処理は、以下の処理をさらに含んでもよい。
ＯＣＶの暫定値ＯＣＶ３＝ＶＢＡＴ＿ＭＩＮ＋ＶＤＲＯＰ１を計算する。
ＯＣＶの暫定値ＯＣＶ３に対応するＳＯＣの暫定値ＳＯＣ３を生成する。
値ＳＯＣ１における前記差分ＶＤＲＯＰ１および前記差分のＳＯＣ依存性にもとづいて、暫定値ＳＯＣ３における電圧降下ΔＶを計算する。
これにより精度を高めることができる。
【００２１】
電圧降下ＶＤＲＯＰのＳＯＣ依存性に加えて、温度依存性を保持してもよい。これによりさらに精度を高めることができる。
【００２２】
修正処理（３−６）において、クーロンカウント容量値ＣＣＦＵＬＬを、式（２）により得られる新たな値ＣＣＦＵＬＬ’に修正してもよい。
ＣＣＦＵＬＬ’＝ＣＣＦＵＬＬ×（１００−ＳＯＣ２）／１００    …（２）
【００２３】
修正処理（３−６）において、クーロンカウント値ＣＣを、式（３）により得られる新たな値ＣＣ’に修正してもよい。
ＣＣ’＝ＣＣ−（ＣＣＦＵＬＬ−ＣＣＦＵＬＬ’）      …（３）
【００２４】
修正処理（３−６）において、クーロンカウント値ＣＣを、式（４）により得られる新たな値ＣＣ’に修正してもよい。
ＣＣ’＝ＣＣ−ＣＣＦＵＬＬ×ＳＯＣ２／１００      …（４）
【００２５】
修正処理（３−６）において、式（５）により得られる新たな値ＳＯＣ’を、修正後のＳＯＣとしてもよい。
ＳＯＣ’＝ＳＯＣ１×１００／（１００−ＳＯＣ２）      …（５）
【００２６】
修正処理（３−６）において、クーロンカウント値ＣＣは修正しなくてもよい。
【００２７】
修正処理（３−６）において、式（６）により得られる新たな値ＳＯＣ’を、修正後のＳＯＣとしてもよい。
ＳＯＣ’＝｛ＣＣＦＵＬＬ−ＣＣ×１００／（１００−ＳＯＣ２）｝／ＣＣＦＵＬＬ×１００  …（６）
【００２８】
修正処理（３−６）において、クーロンカウント容量値ＣＣＦＵＬＬを修正せず、クーロンカウント値ＣＣを、式（７）により得られる新たな値ＣＣ’に修正してもよい。
ＣＣ’＝ＣＣ×１００／（１００−ＳＯＣ２）      …（７）
【００２９】
修正処理（３−６）において、クーロンカウント値ＣＣを式（８）により得られる新たな値ＣＣ’に修正してもよい。
ＣＣ’＝ＣＣ×（１００−ＳＯＣ２）／１００      …（８）
【００３０】
上述のＳＯＣ−ＯＣＶ特性は、システムの最低動作電圧より低いＯＣＶの範囲を負のＳＯＣと対応付けてもよい。
これにより、実効的な残量が増える場合にも対応できる。
【００３１】
補正処理（３）は、バッテリの電圧が所定の電圧値より低いときに有効となってもよい。あるいは補正処理（３）はＳＯＣが所定値より低いときに有効となってもよい。
バッテリ残量が大きいときには補正を行わないことにより、補正にともなう消費電力の増加を抑制できる。
【００３２】
補正処理（３）は、所定の周期ごとに間欠的に有効となってもよい。
補正を常時有効とすると、消費電力が増大するところ、補正処理を所定の周期で間欠的に行うことで、補正にともなう消費電力の増加を抑制できる。
【００３３】
所定の周期は、１秒より長く６０秒より短くてもよい。補正をこの周期で行うことにより、リーズナブルな消費電力の増加の範囲で、十分なＳＯＣの精度の改善の効果が得られる。
【００３４】
本発明の別の態様は、充電式のバッテリのＳＯＣ（State Of Charge）を検出する残量検出回路に関する。残量検出回路は、バッテリの充放電電流を積算することによりクーロンカウント値ＣＣを生成するクーロンカウンタ回路と、バッテリの電圧ＶＢＡＴを検出する電圧検出回路と、式（１）にもとづいて、ＳＯＣの値ＳＯＣ１を計算するＳＯＣ演算部と、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬおよびＳＯＣ−ＯＣＶ特性の少なくともひとつを補正する補正回路と、を備える。
ＳＯＣ１＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００    …（１）
ただし、ＣＣＦＵＬＬは満充電に相当するクーロンカウント容量値
補正回路は、バッテリに関してあらかじめ規定されたＳＯＣとＯＣＶ（Open Circuit Voltage）の対応関係であるＳＯＣ−ＯＣＶ特性にもとづき、値ＳＯＣ１に対応するＯＣＶの値ＯＣＶ１を生成するステップと、値ＯＣＶ１と電圧検出回路が検出した電圧の検出値ＶＢＡＴ１との差分ＶＤＲＯＰ１を生成するステップと、システムの最低動作電圧より差分ＶＤＲＯＰ１に応じた電圧幅ΔＶ、高い値ＯＣＶ２を生成するステップと、ＳＯＣ−ＯＣＶ特性にもとづいて、値ＯＣＶ２に対応するＳＯＣの値ＳＯＣ２を生成するステップと、値ＳＯＣ２が残量ゼロ（０％）に相当するものとして、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬおよびＳＯＣ−ＯＣＶ特性の少なくともひとつを修正するステップと、を実行する。
【００３５】
本発明の別の態様は電子機器である。電子機器は、充電式のバッテリと、バッテリの状態を検出する上述の残量検出回路と、を備える。
【００３６】
本発明の別の態様は自動車である。自動車は、充電式のバッテリと、バッテリの状態を検出する上述の残量検出回路と、を備える。
【００３７】
なお、以上の構成要素の任意の組み合わせや本発明の構成要素や表現を、方法、装置、システムなどの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【００３８】
本発明によれば、バッテリの充電状態の検出精度を改善できる。
【図面の簡単な説明】
【００３９】
【図１】電子機器のブロック図である。
【図２】ＯＣＶとＳＯＣの対応関係（ＳＯＣ−ＯＣＶ特性）ならびにバッテリ電圧ＶＢＡＴの変化を示す図である。
【図３】実施の形態に係る残量検出回路を備えるバッテリ管理システムのブロック図である。
【図４】ＳＯＣ−ＯＣＶ特性の一例を示す図である。
【図５】実施の形態に係る残量検出のフローチャートである。
【図６】電圧とＳＯＣの関係を利用した補正処理を示す図である。
【図７】第１の修正方法を模式的に示す図である。
【図８】ＳＯＣ−ＯＣＶ特性の修正の一例を示す図である。
【図９】ＳＯＣ−ＯＣＶ特性の修正の一例を示す図である。
【図１０】第１変形例におけるＳＯＣ−ＯＣＶ特性の一例を示す図である。
【図１１】図１０のＳＯＣ−ＯＣＶ特性を用いたときの、補正処理を示す図である。
【図１２】電圧降下ＶＤＲＯＰのＳＯＣ依存性を示すルックアップテーブルである。
【図１３】第２変形例に係る残量検出のフローチャートである。
【図１４】図１３のΔＶ計算ルーチンを示すフローチャートである。
【図１５】第２変形例に係る残量検出におけるＳＯＣの推定結果を示す図である。
【図１６】拡張されたＶＤＲルックアップテーブルを示す図である。
【図１７】第４変形例に係る残量検出におけるＳＯＣの推定結果を示す図である。
【図１８】バッテリ管理システムを備える自動車を示す図である。
【図１９】バッテリ管理システムを備える電子機器を示す図である。
【発明を実施するための形態】
【００４０】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。各図面に示される同一または同等の構成要素、部材、処理には、同一の符号を付するものとし、適宜重複した説明は省略する。また、実施の形態は、発明を限定するものではなく例示であって、実施の形態に記述されるすべての特徴やその組み合わせは、必ずしも発明の本質的なものであるとは限らない。
【００４１】
本明細書において、「部材Ａが、部材Ｂと接続された状態」とは、部材Ａと部材Ｂが物理的に直接的に接続される場合や、部材Ａと部材Ｂが、それらの電気的な接続状態に実質的な影響を及ぼさない、あるいはそれらの結合により奏される機能や効果を損なわせない、その他の部材を介して間接的に接続される場合も含む。
同様に、「部材Ｃが、部材Ａと部材Ｂの間に設けられた状態」とは、部材Ａと部材Ｃ、あるいは部材Ｂと部材Ｃが直接的に接続される場合のほか、それらの電気的な接続状態に実質的な影響を及ぼさない、あるいはそれらの結合により奏される機能や効果を損なわせない、その他の部材を介して間接的に接続される場合も含む。
【００４２】
また本明細書において、電圧信号、電流信号、あるいは抵抗に付された符号は、必要に応じてそれぞれの電圧値、電流値、あるいは抵抗値を表すものとする。
【００４３】
図３は、実施の形態に係る残量検出回路を備えるバッテリ管理システム１００のブロック図である。バッテリ管理システム１００は、バッテリ１０２、充電回路１０４、負荷１０８および残量検出回路２００を備える。バッテリ１０２は、ひとつ、あるいは複数のセルを含む。セルの種類は特に限定されず、リチウムイオンセル、リチウム空気セル、リチウム金属ベースのセル、ニッケル水素セル、ニッケルカドミウムセル、ニッケル亜鉛セルなどが例示される。セルの個数は、バッテリ管理システム１００の用途に依存するが、ポータブルの電子機器の場合、１セル〜数セル、車載バッテリや産業機器、産業機械の用途では数十〜数百セルのオーダーとなる。本発明の用途としてバッテリ１０２の構成は特に限定されない。
【００４４】
負荷１０８には、バッテリ１０２からのバッテリ電圧ＶＢＡＴが供給される。負荷１０８の種類は特に限定されない。たとえばバッテリ管理システム１００が電子機器に搭載される場合、負荷１０８は、電池電圧ＶＢＡＴを昇圧あるいは降圧し、電源電圧ＶＤＤを生成する電源回路や、電源電圧ＶＤＤを受けて動作する各種電子回路を含みうる。バッテリ管理システム１００が自動車や産業機械に搭載される場合、負荷１０８は、モータと、電池電圧ＶＢＡＴを交流に変換し、モータを駆動するインバータと、を含みうる。
【００４５】
充電回路１０４は、外部の電源アダプタやＵＳＢ（Universal Serial Bus）、充電ステーションなどからの電源電圧ＶＥＸＴを受け、バッテリ１０２を充電する。
【００４６】
残量検出回路２００は、バッテリ１０２の充電状態（ＳＯＣ：State Of Charge）を検出する。なお本明細書では理解の容易化のために、ＳＯＣを、最小値が０、最大値が１００である百分率（％）として説明するが、本発明はそれには限定されない。たとえばＳＯＣを１０ビットで表す場合、デジタル信号処理の過程においては、ＳＯＣは、０〜１０２３の１０２４階調で表されることに留意されたい。
【００４７】
残量検出回路２００は、クーロンカウンタ回路２０２、電圧検出回路２０４、ＳＯＣ演算部２０６、補正回路２０８、ルックアップテーブル２１０を備える。クーロンカウンタ回路２０２は、バッテリ１０２の充放電電流（ＩＢＡＴ）を積算することにより、クーロンカウント値ＣＣを生成する。クーロンカウント値ＣＣは、以下の式で表される。
ＣＣ＝∫ＩＢＡＴｄｔ
クーロンカウンタ回路２０２は、バッテリ電流ＩＢＡＴを所定のサンプリング周期Δｔでサンプリングする。クーロンカウント値ＣＣは、各サンプリング時刻におけるバッテリ電流ＩＢＡＴｉを用いて、以下の式で計算される。
ＣＣ＝Σｉ＝１（Δｔ×ＩＢＡＴｉ）
この積算（積分）は、たとえばバッテリ１０２から流れ出る方向の電流ＩＢＡＴを正、バッテリ５０２に流れ込む方向の電流ＩＢＡＴを負として行われる。
【００４８】
電流ＩＢＡＴの検出方法は特に限定されない。たとえば電流ＩＢＡＴの経路上に、バッテリ１０２と直列にセンス抵抗ＲＳを挿入し、センス抵抗ＲＳの電圧降下を検出してもよい。センス抵抗ＲＳは、バッテリ１０２の正極側に挿入されてもよいし、負極側に挿入されてもよい。クーロンカウンタ回路２０２は、センス抵抗ＲＳの電圧降下ＶＣＳ（もしくは電圧降下ＶＣＳを増幅した電圧）をサンプリングするＡ／Ｄコンバータと、Ａ／Ｄコンバータの出力データを積算する積算器と、を含んでもよい。
【００４９】
電圧検出回路２０４は、バッテリ１０２の電圧ＶＢＡＴを監視し、バッテリ電圧ＶＢＡＴ１を示すデータ（電圧データ）ＤＶＢＡＴを生成する。電圧検出回路２０４は、バッテリ電圧ＶＢＡＴあるいはそれを所定係数倍した電圧をサンプリングし、デジタル化するＡ／Ｄコンバータを含んでもよい。
【００５０】
ＳＯＣ演算部２０６は、クーロンカウンタ回路２０２からのクーロンカウント値ＣＣを受ける。ＳＯＣ演算部２０６は、式（１）にもとづいて、ＳＯＣの値ＳＯＣ１を計算する。
ＳＯＣ１＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００    …（１）
ただし、ＣＣＦＵＬＬは満充電に相当するクーロンカウント容量値
【００５１】
補正回路２０８には、値ＳＯＣ１および電圧データＤＶＢＡＴが供給される。補正回路２０８は、これらの値にもとづいて、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬおよびＳＯＣ−ＯＣＶ特性の少なくともひとつを補正する。
【００５２】
以下、補正回路２０８による補正処理を説明する。
バッテリ１０２に関して、ＳＯＣとＯＣＶ（Open Circuit Voltage）の対応関係（ＳＯＣ−ＯＣＶ特性）があらかじめ測定されている。図４は、ＳＯＣ−ＯＣＶ特性の一例を示す図である。ＳＯＣ−ＯＣＶ特性は、たとえば図３のルックアップテーブル２１０に格納される。ルックアップテーブル２１０に格納されない中間値については、線形補間などの演算手段により生成することができる。あるいは補正回路２０８は、ＳＯＣ−ＯＣＶ特性を、演算式（たとえば多項式）の形式で保持してもよい。
【００５３】
補正回路２０８は、ＳＯＣ−ＯＣＶ特性にもとづいて、値ＳＯＣ１に対応するＯＣＶの値ＯＣＶ１を生成する。続いて、値ＯＣＶ１と電圧検出回路２０４が検出したバッテリ電圧ＶＢＡＴ１の差分ＶＤＲＯＰ１を生成する。
ＶＤＲＯＰ１＝ＯＣＶ１−ＶＢＡＴ１
【００５４】
負荷５０８を含むシステムの最低動作電圧をＶＢＡＴ＿ＭＩＮとする。補正回路２０８は、最低動作電圧ＶＢＡＴ＿ＭＩＮよりも差分ＶＤＲＯＰ１に応じた電圧幅ΔＶ、高い値ＯＣＶ２を生成する。
ＯＣＶ２＝ＶＢＡＴ＿ＭＩＮ＋ΔＶ
ΔＶ＝ＶＤＲＯＰ１とした場合、
ＯＣＶ２＝ＶＢＡＴ＿ＭＩＮ＋ＶＤＲＯＰ１
となる。あるいはΔＶ＝ＶＤＲＯＰ１×α（αは定数）とした場合、
ＯＣＶ２＝ＶＢＡＴ＿ＭＩＮ＋ＶＤＲＯＰ１×α
となる。あるいはΔＶ＝ＶＤＲＯＰ１＋β（βは定数）とした場合、
ＯＣＶ２＝ＶＢＡＴ＿ＭＩＮ＋ＶＤＲＯＰ１＋β
となる。あるいは、
ＯＣＶ２＝ＶＢＡＴ＿ＭＩＮ＋α×ＶＤＲＯＰ１＋β
としてもよい。より一般化すると、所定の関数ｆ（）を定義しておき、ΔＶ＝ｆ（ＶＤＲＯＰ１）にもとづいて電圧幅ΔＶを計算してもよい。
【００５５】
補正回路２０８は、ＳＯＣ−ＯＣＶ特性にもとづいて、値ＯＣＶ２に対応するＳＯＣの値ＳＯＣ２を生成する。そして補正回路２０８は、値ＳＯＣ２がバッテリ１０２の残量ゼロ（０％）に相当するものとして、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬおよびＳＯＣ−ＯＣＶ特性の少なくともひとつを修正する。
【００５６】
クーロンカウンタ回路２０２および電圧検出回路２０４は、ハードウェアのみで実装することができ、それらを単一のＩＣに集積化してもよい。ＳＯＣ演算部２０６、補正回路２０８およびルックアップテーブル２１０は、マイコンなどのソフトウェア制御可能なプロセッサで実装してもよい。あるいは残量検出回路２００全体を、単一のチップに集積化してもよい。
【００５７】
残量検出回路２００が生成したＳＯＣは、数字として、あるいは残量を示すアイコンとしてディスプレイ装置に表示され、あるいはアラートとして使用される。
【００５８】
以上が実施の形態に係る残量検出回路２００の構成である。続いてその動作を説明する。図５は、実施の形態に係る残量検出のフローチャートである。たとえば満充電状態から処理がスタートする。なお、フローチャートは、各処理（ステップ）の順序を限定するものではなく、各処理の順序は、処理が破綻しない限りにおいて任意に入れ換えることが可能である。また、このフローチャートは、各処理が行われる頻度（周波数、周期）が同じであることを示すものではない。
【００５９】
クーロンカウンタ回路２０２は、クーロンカウント値ＣＣを計算する（Ｓ１００）。ＳＯＣ演算部２０６は、クーロンカウント値ＣＣを利用し、式（１）にもとづいて値ＳＯＣ１を演算する（Ｓ１０２）。たとえば、クーロンカウンタ回路２０２は、数十〜数百Ｈｚの周期でクーロンカウント値ＣＣを更新する一方、ＳＯＣ演算部２０６は、それより低い周波数、たとえば１秒〜６０秒程度の周期で、ＳＯＣ１を演算してもよい。
【００６０】
電圧検出回路２０４はＶＢＡＴを測定する（Ｓ１０４）。消費電力の増加が問題とならない場合、電圧検出回路２０４は、高い周波数（たとえばクーロンカウンタ回路２０２と同じ周波数）で、バッテリ電圧ＶＢＡＴを測定しても構わない。
【００６１】
続いて、補正処理Ｓ１１０が行われる。補正処理Ｓ１１０は、ＳＯＣ１の演算毎に行ってもよいし、それより低い周期で行ってもよい。図６は、電圧とＳＯＣの関係を利用した補正処理Ｓ１１０を示す図である。各値は、それに付した番号（i）〜（v）の順序で生成される。
【００６２】
補正回路２０８は、ＳＯＣ−ＯＣＶ特性にもとづいて、ＳＯＣ１からＯＣＶ１に変換する（Ｓ１１２）。続いて、電圧降下ＶＤＲＯＰ１を計算する（Ｓ１１４）。そして、電圧降下ＶＤＲＯＰ１および最低動作電圧ＶＢＡＴ＿ＭＩＮにもとづいて、バッテリ電圧ＶＢＡＴの測定値ＶＢＡＴ１が最低動作電圧ＶＢＡＴ＿ＭＩＮに達するときのＯＣＶの値ＯＣＶ２を推定する（Ｓ１１６）。そして、ＳＯＣ−ＯＣＶ特性にもとづいて、値ＯＣＶ２からそれに対応するＳＯＣの値ＳＯＣ２に逆変換する（Ｓ１１８）。
【００６３】
値ＳＯＣ２は、システムがシャットダウンしうるＳＯＣを表す。すなわち、ＳＯＣ演算部２０６が計算するＳＯＣ１が、値ＳＯＣ２まで低下すると、バッテリ電圧ＶＢＡＴが最低動作電圧ＶＢＡＴ＿ＭＩＮまで低下してシャットダウンする可能性があることを表す。
【００６４】
そこで修正処理Ｓ１２０では、値ＳＯＣ２にもとづいて、値ＳＯＣ２が残量ゼロ（０％）に相当するものとして、値ＳＯＣ１、ＣＣ、ＣＣＦＵＬＬおよびＳＯＣ−ＯＣＶ特性の少なくともひとつを修正する。
【００６５】
以上が実施の形態に係る残量検出処理である。ここで説明した残量検出回路２００（および残量検出方法）によれば、その時々で変化する電圧降下ＶＤＲＯＰを考慮し、実際のバッテリ電圧ＶＢＡＴが最低動作電圧ＶＢＡＴ＿ＭＩＮまで低下したとき、すなわち、システムがシャットダウンするときにＳＯＣがゼロとなるように、クーロンカウント法にもとづく残量検出処理を補正することができる。これによりＳＯＣの検出精度を改善できる。
【００６６】
なお、実施の形態に係る残量検出方法を、電圧法にもとづくＳＯＣと混同してはならない。本実施の形態では、ＳＯＣ−ＯＣＶ特性を利用する点において電圧法と共通するが、ＯＣＶを測定する処理は必要とせず、したがって緩和時間の経過を待つ必要はない。
【００６７】
本発明は、図３のブロック図、図５のフローチャートとして把握され、あるいは上述の説明から導かれるさまざまな装置、回路、システム、方法に及ぶものであり、特定の構成や方法に限定されるものではない。以下、本発明の範囲を狭めるためではなく、発明の本質や回路動作の理解を助け、またそれらを明確化するために、より具体的な構成や方法を説明する。
【００６８】
続いて、図５のフローチャートにおける修正処理Ｓ１２０について説明する。修正処理には、以下で説明するように様々な方法が存在する。
【００６９】
（第１の修正方法）
図７は、第１の修正方法を模式的に示す図である。クーロンカウント容量値ＣＣＦＵＬＬは、式（２）により得られる新たな値ＣＣＦＵＬＬ’に修正される。
ＣＣＦＵＬＬ’＝ＣＣＦＵＬＬ×（１００−ＳＯＣ２）／１００    …（２）
つまり、ＳＯＣ２が残量ゼロ（ＳＯＣ＝０％）となるように、ＣＣＦＵＬＬをスケーリングする。Ｋ＝（１００−ＳＯＣ２）／１００をスケーリングファクタと呼ぶとき、式（２）は式（２’）に書き直すことができる。
ＣＣＦＵＬＬ’＝ＣＣＦＵＬＬ×Ｋ      …（２’）
【００７０】
また、クーロンカウント値ＣＣは、式（３）により得られる新たな値ＣＣ’に修正される。
ＣＣ’＝ＣＣ−（ＣＣＦＵＬＬ−ＣＣＦＵＬＬ’）
＝ＣＣ−ＣＣＦＵＬＬ×ＳＯＣ２／１００      …（３）
つまり、ＣＣＦＵＬＬを修正によって減らした分ΔＣＣ（＝ＣＣＦＵＬＬ−ＣＣＦＵＬＬ’）、ＣＣも減らす。
【００７１】
修正後のクーロンカウント値ＣＣ’は、図３のクーロンカウンタ回路２０２の内部の、クーロンカウント値ＣＣを格納するレジスタに書き込まれる。また、クーロンカウント容量値ＣＣＦＵＬＬ’は、図３のＳＯＣ演算部２０６が保持するクーロンカウント容量値ＣＣＦＵＬＬと置き換えられる。
【００７２】
クーロンカウント値ＣＣを、式（４）により得られる新たな値ＣＣ’に修正してもよい。
ＣＣ’＝ＣＣ−ＣＣＦＵＬＬ×ＳＯＣ２／１００      …（４）
なお、式（３）は、式（４）と等価である。
【００７３】
ＣＣおよびＣＣＦＵＬＬを修正すると、その後、ＳＯＣ演算部２０６が生成するＳＯＣ１’は、以下の式で表される。
ＳＯＣ１’＝（ＣＣＦＵＬＬ’−ＣＣ’）／ＣＣＦＵＬＬ’×１００
＝｛（ＣＣＦＵＬＬ−ＣＣＦＵＬＬ×ＳＯＣ２／１００）−（ＣＣ−ＣＣＦＵＬＬ×ＳＯＣ２／１００）｝／｛ＣＣＦＵＬＬ×Ｋ｝×１００
＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００×１／Ｋ
ここで（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００は、式（１）のＳＯＣ１に相当するから、補正後のＳＯＣ’は、式（５）で表される。
ＳＯＣ’＝ＳＯＣ１×１／Ｋ
＝ＳＯＣ１×１００／（１００−ＳＯＣ２）      …（５）
【００７４】
第１の修正方法では、１回の補正で、クーロンカウント値ＣＣおよびクーロンカウント容量値ＣＣＦＵＬＬが修正され、それ以降、修正後のクーロンカウント値ＣＣ’を初期値として充放電電流ＩＢＡＴが積算されていく。つまり、修正が反映されたまま、クーロンカウント法によるＳＯＣ検出が行われる。つまり必ずしもＳＯＣ演算部２０６のＳＯＣ１の演算ごとに、補正回路２０８の補正を行う必要はない。
【００７５】
（第２の修正方法）
第２の修正方法は、第１の修正方法と実質的に同一であるが、値ＣＣおよびＣＣＦＵＬＬの修正は行なわずに、式（５）にもとづいて演算される値ＳＯＣ’を、修正後の改善されたＳＯＣとする。第２の修正方法は、ＳＯＣ演算部２０６がＳＯＣ１を演算するたびに、補正処理を行う場合に用いることができる。
【００７６】
（第３の修正方法）
第３の修正方法では、ＣＣＦＵＬＬを式（２）にもとづいて修正する一方、クーロンカウント値ＣＣは修正しない。
【００７７】
この場合、式（６）により得られる新たな値ＳＯＣ’が、修正後のＳＯＣとして使用される。
ＳＯＣ’＝（ＣＣＦＵＬＬ’−ＣＣ）／ＣＣＦＵＬＬ’×１００
＝（ＣＣＦＵＬＬ×Ｋ−ＣＣ）／（ＣＣＦＵＬＬ×Ｋ）×１００
＝（ＣＣＦＵＬＬ−ＣＣ×１／Ｋ）／ＣＣＦＵＬＬ×１００
＝｛ＣＣＦＵＬＬ−ＣＣ×１００／（１００−ＳＯＣ２）｝／ＣＣＦＵＬＬ×１００  …（６）
【００７８】
（第４の修正方法）
第４の修正方法では、クーロンカウント容量値ＣＣＦＵＬＬを修正せず、クーロンカウント値ＣＣを、式（７）により得られる新たな値ＣＣ’に修正してもよい。
ＣＣ’＝ＣＣ×１００／（１００−ＳＯＣ２）      …（７）
【００７９】
第４の修正方法は、第３の修正方法と同じＳＯＣ’を与えるため等価といえる。
【００８０】
（第５の修正方法）
第５の修正方法では、クーロンカウント容量値ＣＣＦＵＬＬを式（２）にもとづいて補正する。またクーロンカウント値ＣＣを式（８）により得られる新たな値ＣＣ’に修正する。つまり、ＣＣＦＵＬＬとＣＣを同じスケーリングファクタＫでスケーリングする。
ＣＣ’＝ＣＣ×（１００−ＳＯＣ２）／１００
＝ＣＣ×Ｋ      …（８）
【００８１】
第５の修正方法では、修正直後のＳＯＣは、
ＳＯＣ’＝（ＣＣＦＵＬＬ’−ＣＣ）／ＣＣＦＵＬＬ’×１００
＝（ＣＣＦＵＬＬ×Ｋ−ＣＣ×Ｋ）／（ＣＣＦＵＬＬ×Ｋ）×１００
＝（ＣＣＦＵＬＬ−ＣＣ）／ＣＣＦＵＬＬ×１００
＝ＳＯＣ１
となり、修正直前と同じ値が維持される。ただし、クーロンカウント値ＣＣとクーロンカウント容量値ＣＣＦＵＬＬは補正されているため、その後、カウントが進んで演算されるＳＯＣ１は、修正が反映されたものとなる。ＳＯＣの不連続が好ましくない場合、第５の修正方法を採用するとよい。
【００８２】
（第６の修正方法）
第１〜第５の修正方法では、値ＣＣ，ＣＣＦＵＬＬ，ＳＯＣの少なくともひとつを修正するものであった。これに対して第６の修正方法では、ＳＯＣ−ＯＣＶ特性が修正される。より詳しくは、第６の修正方法では、ＳＯＣ２が、残量ゼロ（０％）となるように、ＳＯＣ−ＯＣＶ特性が修正される。たとえば、修正前のＳＯＣ（％）と、修正後のＳＯＣ’（％）は、以下の式（９）を満たしてもよい。
ＳＯＣ’＝１００−（１００−ＳＯＣ）×１／Ｋ
＝１００−（１００−ＳＯＣ）×１００／（１００−ＳＯＣ２）    …（９）
図８および図９は、ＳＯＣ−ＯＣＶ特性の修正の一例を示す図である。
【００８３】
なお第６の修正方法はこれには限定されず、式（９）と異なる演算式を用いてもよい。あるいは、ＳＯＣの値を修正する代わりに、各ＳＯＣに対応するＯＣＶの値を修正してもよいし、両方を補正してもよい。ＳＯＣ−ＯＣＶ特性の修正は、上述の第１〜第５の修正方法に相当するバリエーションが存在しうる。
【００８４】
以上、修正方法のバリエーションについて説明した。当業者によれば、第１〜第６の修正方法の他にも、さまざまな修正方法が存在すること、またそれらが本発明の範囲に含まれることが理解される。
【００８５】
また、いずれの修正方法を採用すべきかは、バッテリ管理システム１００の用途に応じて選択すればよい。
たとえば、第１、第２の修正方法では、Ｋ＜１の場合に、補正によってＳＯＣ値は大きくなる。反対に、第３、第４の修正方法では、Ｋ＜１の場合に、補正によってＳＯＣ値は小さくなる。第５の修正方法では、補正の前後でＳＯＣ値は維持される。
Ｋ＜１は絶対的な残量の低下を表す。一方、ＳＯＣは相対残量を示す。相対残量の観点からは、第１、第２の修正方法が正しいと言える。しかしながら多くのユーザは間隔的に、％表示のＳＯＣを相対残量とは捉えておらず、絶対残量として捉えている場合もある。この場合、残量が減っている（つまり残りの使用可能時間が減っている）にも関わらず、ＳＯＣ（％）が増えることに違和感を覚える場合もあろう。この場合、第３〜第５の修正方法を用いればよい。
【００８６】
以上、本発明について、実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下、こうした変形例について説明する。
【００８７】
（第１変形例）
ＳＯＣ−ＯＣＶ特性は、システムの最低動作電圧より低いＯＣＶの範囲を負のＳＯＣと対応付けてもよい。図１０は、第１変形例におけるＳＯＣ−ＯＣＶ特性の一例を示す図である。これまでの説明では、バッテリの実効的な残量（絶対値）が減少する場合について説明したが、電圧降下ＶＤＲＯＰが負になると、逆に残量が増加することとなる。負のＳＯＣ値を導入することにより、他に特別な処理を追加することなく、実効的な残量が増える場合にも対応することができる。図１１は、図１０のＳＯＣ−ＯＣＶ特性を用いたときの、補正処理を示す図である。
【００８８】
（第２変形例）
図５のフローチャートにおける処理Ｓ１１６において、ＯＣＶ２を生成するときに、
ＯＣＶ２＝ＶＢＡＴ＿ＭＩＮ＋ΔＶ    …（１０）
なる計算式を用いた。図２に示すように、ＯＣＶとＶＢＡＴの差分ＶＤＲＯＰは、ＳＯＣに依存する。したがって処理Ｓ１１６において、ΔＶ＝ＶＤＲＯＰ１を用いると、ＳＯＣ１とＳＯＣ２の差が大きいときの誤差が大きくなる。
【００８９】
そこでこの第２変形例では、電圧降下ＶＤＲＯＰのＳＯＣ依存性が考慮される。具体的には、電圧降下ＶＤＲＯＰのＳＯＣ依存性が、ルックアップテーブルあるは演算式として規定される。図１２は、電圧降下ＶＤＲＯＰのＳＯＣ依存性を示すルックアップテーブルである。このテーブルは、複数のＳＯＣにおける電圧降下を相対的な比率を表しており、たとえば所定の基準ＳＯＣ（ここでは１００％）における電圧降下を基準として、各ＳＯＣでの電圧降下を比率（Voltage Drop Ratio：ＶＤＲと記す）で表したものである。
ＶＤＲ（ｘ）＝ＶＤＲＯＰ（ｘ）／ＶＤＲＯＰ（１００）
【００９０】
したがって、あるＳＯＣ（＝ｘ１）における電圧降下がＶＤＲＯＰ１であったときに、別のＳＯＣ（＝ｘ２）における電圧降下ＶＤＲＯＰ２は、以下の式から計算できる。
ＶＤＲＯＰ２＝ＶＤＲＯＰ１×ＶＤＲ（ｘ２）／ＶＤＲ（ｘ１）
【００９１】
図１３は、第２変形例に係る残量検出のフローチャートである。このフローチャートは図５のフローチャートの処理Ｓ１１６の前に、ΔＶ計算ルーチンＳ１１５が追加される。図１４は、ΔＶ計算ルーチンＳ１１５を示すフローチャートである。
【００９２】
はじめに、電圧降下ＶＤＲＯＰ１および最低動作電圧ＶＢＡＴ＿ＭＩＮにもとづいて、バッテリ電圧ＶＢＡＴの測定値ＶＢＡＴ１が最低動作電圧ＶＢＡＴ＿ＭＩＮに達するときのＯＣＶの暫定値ＯＣＶ３を計算する（Ｓ１３０）。
ＯＣＶ３＝ＶＢＡＴ＿ＭＩＮ＋ＶＤＲＯＰ１
そしてＳＯＣ−ＯＣＶ特性にもとづいて、暫定値ＯＣＶ３からそれに対応するＳＯＣの値ＳＯＣ３に逆変換する（Ｓ１３２）。
【００９３】
続いて図１２のルックアップテーブルにもとづいて、ＳＯＣ１、ＳＯＣ３におけるＶＤＲの値ＶＤＲ１，ＶＤＲ３を取得する（Ｓ１３４）。そして、
ΔＶ＝ＶＤＲＯＰ１×ＶＤＲ３／ＶＤＲ１
にもとづいて、ΔＶを計算する（Ｓ１３６）。こうして得られたΔＶを利用して、図１３の処理Ｓ１１６においてＯＣＶ２が計算される。
【００９４】
図１５は、第２変形例に係る残量検出におけるＳＯＣの推定結果を示す図である。バッテリを一定負荷（０．３５Ｃ）で放電したときの、ＳＯＣの推定値が示される。（i）は理想のＳＯＣであり一定負荷のときに直線となる。（ii）は図５のフローチャートにもとづくＳＯＣの推定値を、（iii）は第２変形例のフローチャートにもとづくＳＯＣの推定値を示す。また図１５には、各ＳＯＣ推定値と理想ＳＯＣとの誤差が示される。図１５から分かるように、第２変形例によれば、電圧降下ＶＤＲＯＰのＳＯＣ依存性を考慮することにより、誤差を小さくでき、推定精度を高めることができる。
【００９５】
（第３変形例）
第２変形例では、電圧降下ＶＤＲＯＰのＳＯＣ依存性をルックアップテーブルを用いて補正したが、これを以下のような演算式で近似してもよい。
VDR(SOC) = 10^α*ln(log10(β*SOC))+θ
α、β、θは劣化・温度係数
【００９６】
（第４変形例）
第４変形例は、第２変形例の精度をさらに高めたものである。第４変形例では、ＶＤＲの温度依存性をさらに考慮する。図１６は、拡張されたＶＤＲルックアップテーブルを示す図である。図１６に示すように、ＶＤＲルックアップテーブルは、いくつかの温度ごとに設けられる。図１４のルーチンを実行する際には、温度を測定し、温度に応じたルックアップテーブルにもとづいてＶＤＲの値を取得する。図１７は、第４変形例に係る残量検出におけるＳＯＣの推定結果を示す図である。第４変形例によれば、電圧降下ＶＤＲＯＰの温度依存性を考慮することにより、さらに誤差を小さくでき、推定精度を高めることができる。
【００９７】
第４変形例において、温度ごとのＶＤＲテーブルを、演算式で近似してもよい。
（第５変形例）
補正処理を常に行うと、補正回路２０８の演算量が増え、消費電力が増加する。そこで補正処理は、バッテリ１０２の電圧ＶＢＡＴが所定の電圧値ＶＴＨより低いときに有効となってもよい。電圧値ＶＴＨは、システム毎に適切な値を選択すればよい。多くの場合、ユーザがバッテリ１０２の残量（ＳＯＣ）に関心を寄せるのは、ＳＯＣが低下したとき、つまりＶＢＡＴが低下したときである。変形例２によれば、ユーザが関心のある状況において、補正処理を有効とすることで、消費電力の増加を要請できる。なお、補正処理はＳＯＣが所定値より低いときに有効となってもよい。
【００９８】
（第６変形例）
補正処理は、所定の周期ごとに間欠的に有効となってもよい。補正を常時有効とすると、消費電力が増大する。そこで補正処理を所定の周期で間欠的に行うことで、補正にともなう消費電力の増加を抑制できる。
【００９９】
所定の周期は、１秒より長く６０秒より短くてもよい。補正をこの周期で行うことにより、リーズナブルな消費電力の増加の範囲で、十分なＳＯＣの精度の改善の効果が得られる。電圧降下ＶＤＲＯＰが変化する時間スケールが６０秒より長い用途では、所定の周期はさらに長くすることができる。
【０１００】
（第７変形例）
補正処理は、ＳＯＣが所定量（ｎ％、ｎは任意の実数）変化する毎に有効となってもよい。この変形例によれば、補正にともなう消費電力の増加を抑制できる。
【０１０１】
（第８変形例）
実施の形態では、バッテリ５０２の電圧ＶＢＡＴを監視する専用の電圧検出回路２０４を設けたが、本発明はそれに限定されない。バッテリ管理システム１００において、すでにバッテリ電圧ＶＢＡＴを検出する回路が存在する場合には、その回路が検出したバッテリ電圧の値ＶＢＡＴ１を用いればよい。また、バッテリ電圧ＶＢＡＴは、バッテリ１０２の正極（＋）の電圧を監視してもよいが、その限りではなく、別のノード（ライン）の電圧を監視してもよい。たとえば、バッテリ１０２と負荷１０８の間にロードスイッチが設けられるシステムでは、ロードスイッチよりも負荷１０８側のノード（ライン）の電圧を監視してもよい。これは、ロードスイッチの電圧降下が大きい場合に有効である。
【０１０２】
（第９変形例）
ＳＯＣ−ＯＣＶ特性の修正と、値ＣＣ，ＣＣＦＵＬＬ，ＳＯＣの修正は併用してもよい。
【０１０３】
最後に、バッテリ管理システム１００の用途を説明する。図１８は、バッテリ管理システム１００を備える自動車３００を示す図である。自動車３００は、電気自動車（ＥＶ）、プラグインハイブリッド自動車（ＰＨＶ）、ハイブリッド自動車（ＨＶ）、などである。インバータ３０２は、バッテリ管理システム１００からの電圧ＶＢＡＴを受け、交流に変換してモータ３０４に供給し、モータ３０４を回転させる。またブレーキが踏まれた場合などの減速時には、インバータ３０２は回生動作を行い、モータ３０４が発生する電流をバッテリ管理システム１００のバッテリ１０２に回収する。ＰＨＶやＥＶでは、そのほかにバッテリ管理システム１００のバッテリ１０２を充電する充電回路を備える。
【０１０４】
図１９は、バッテリ管理システム１００を備える電子機器４００を示す図である。電子機器４００は、バッテリ管理システム１００に加えて、ＰＭＩＣ（パワーマネージメントＩＣ）４０２、プロセッサ４０４、その他図示しない電子回路を含む。ＰＭＩＣ４０２は統合された複数の電源回路であり、プロセッサ４０４やその他の電子回路に、適切な電源電圧を供給する。
【０１０５】
そのほか、バッテリ管理システム１００は、産業機器、産業機械、家庭用／工場用の蓄電システム、エレベータシステムの電源などに用いることができる。
【０１０６】
実施の形態にもとづき、具体的な用語を用いて本発明を説明したが、実施の形態は、本発明の原理、応用を示しているにすぎず、実施の形態には、請求の範囲に規定された本発明の思想を逸脱しない範囲において、多くの変形例や配置の変更が認められる。
【符号の説明】
【０１０７】
５００…電子機器、５０２…バッテリ、５０４…充電回路、５０６…残量検出回路、５０８…負荷、５１０…クーロンカウンタ回路、５１２…ＳＯＣ演算部、１００…バッテリ管理システム、１０２…バッテリ、１０４…充電回路、１０８…負荷、２００…残量検出回路、２０２…クーロンカウンタ回路、２０４…電圧検出回路、２０６…ＳＯＣ演算部、２０８…補正回路、２１０…ルックアップテーブル、３００…自動車、３０２…インバータ、３０４…モータ、４００…電子機器、４０２…ＰＭＩＣ、４０４…プロセッサ。
【図１】
0006722036.tif 000002
【図２】
0006722036.tif 000003
【図３】
0006722036.tif 000004
【図４】
0006722036.tif 000005
【図５】
0006722036.tif 000006
【図６】
0006722036.tif 000007
【図７】
0006722036.tif 000008
【図８】
0006722036.tif 000009
【図９】
0006722036.tif 000010
【図１０】
0006722036.tif 000011
【図１１】
0006722036.tif 000012
【図１２】
0006722036.tif 000013
【図１３】
0006722036.tif 000014
【図１４】
0006722036.tif 000015
【図１５】
0006722036.tif 000016
【図１６】
0006722036.tif 000017
【図１７】
0006722036.tif 000018
【図１８】
0006722036.tif 000019
【図１９】
0006722036.tif 000020