TL

バッテリーモデル:等価回路・SoC・SoH推定

残量計が「いま何%か」を当てる仕組みを根本理解。OCV-SoC曲線・等価回路・カルマンフィルタを押さえ、BMSのSoC/SoH推定を設計・評価できる。

応用バッテリーBMSSoC推定SoHカルマンフィルタ等価回路モデル最終更新: 2026-06-21
TL;DR要点だけ先に
  • 1.SoCの基準は開放電圧OCVだが、内部抵抗とRC緩和で端子電圧はOCVからずれるため、Rint/Thevenin等価回路でこのズレをモデル化して取り除く。OCV-SoC曲線には充放電で経路が異なるヒステリシスがある。
  • 2.クーロンカウント(電流の時間積分)は瞬時には正確だが電流センサのオフセット誤差が積分でドリフトする。これを静置時のOCV測定で定期的に再較正し、両者を融合するのが拡張カルマンフィルタ(EKF)によるSoC推定。
  • 3.SoHは劣化指標で、容量フェード(満充電容量の低下)と内部抵抗増加(パワーフェード)の二面で評価する。EKFで等価回路パラメータを同時推定すれば走行中にRやQの変化を追跡できる。

なぜ「残量計」はこれほど難しいのか

スマートフォンやEVの残量表示は、燃料タンクの液面のように直接測れる量ではありません。電池の中に「あと何パーセント」というメーターが浮いているわけではなく、外から測れるのは 端子電圧・電流・温度 の三つだけです。残量(SoC: State of Charge)も健全度(SoH: State of Health)も、この三つから 推定 するしかない量です。

しかも端子電圧は残量と一対一では対応しません。電流を流すと内部抵抗による電圧降下が乗り、流すのをやめても電圧がゆっくり戻る緩和現象があり、さらに同じ残量でも充電中と放電中で電圧が違う(ヒステリシス)。これらを物理的にモデル化して「真の残量に対応する電圧」を取り出すのが本記事の主題です。電池そのものの内部構造は /power/lithium-battery-internals/、劣化機構とBMSの全体像は /power/battery-degradation-bms/ を前提にします。

OCV-SoC曲線とヒステリシス

推定の出発点は OCV(Open Circuit Voltage、開放電圧) です。電流を流さず十分に静置したセルの端子電圧で、これは内部の電気化学ポテンシャル差そのものを反映します。OCVはSoCの単調関数で対応づけられ、この対応表を OCV-SoC曲線 と呼びます。SoCの「真値」の基準はここにあります。

OCV-SoC曲線の性質(化学系で大きく異なる):

  NMC/NCA(層状酸化物)  : SoC全域で傾きがあり、OCVからSoCを読みやすい
  LiFePO4(オリビン)    : 中間SoCで曲線が平坦(数十mV/全SoC域)
                           → OCVからSoCをほとんど読めない
                           → クーロンカウント依存が高まる

厄介なのが ヒステリシス です。同じSoCでも、そこに「充電してきて到達した」場合と「放電してきて到達した」場合でOCVが異なり、充電側の曲線が放電側より上に来ます。原因は正負極活物質の相転移に伴う機械的応力やイオン配置の履歴依存で、特にLiFePO4で顕著です。実装では充電/放電の2本の曲線を持ち、その間を履歴に応じて埋めるヒステリシス状態を状態変数として持たせます。

OCVは「測れるが、すぐには測れない」

OCVは静置電圧なので、電流を切った直後の端子電圧はまだOCVではありません。RC緩和(後述)が収まるまで数十分から数時間かかり、ヒステリシスもあるため、走行中・使用中に正確なOCVを測ることはできません。OCV較正が「駐車後しばらく経ってから」しか効かないのはこのためです。

等価回路モデル ── Rint と Thevenin(1RC/2RC)

使用中の端子電圧 V から真のSoC(=OCV)を取り出すには、電流が作る電圧ズレを差し引く必要があります。これを 等価回路モデル(ECM) で表します。最も単純なのが Rint モデル です。

Rint モデル(内部抵抗のみ):

  V = OCV(SoC) − I·R0      (I は放電を正とする)

  R0 : オーム抵抗(電解液・集電体・接触抵抗)。
       電流の変化に「瞬時」に追従する成分。

Rintは即応分しか表せません。実際の電池は電流を切っても端子電圧がじわじわ戻る 緩和(分極) を示します。これは電荷移動反応や拡散が時定数を持つためで、RC並列回路で表現します。R0に1段のRCを足したのが Thevenin(1RC)モデル、2段が 2RC モデル です。

Thevenin 1RC モデル:

  V = OCV(SoC) − I·R0 − V1

  V1 はRC枝の電圧で、時定数 τ1 = R1·C1 で緩和する:
    dV1/dt = I/C1 − V1/(R1·C1)

  R0   : 瞬時のオーム降下
  R1·C1: 分極(電荷移動)の緩和。τ1 は秒〜分オーダー

2RC モデルは速い緩和(電荷移動)と遅い緩和(拡散)を
  τ1(短)と τ2(長)の2本で分離して精度を上げる。

RC枝の正体は、交流インピーダンス測定(EIS)で見えるインピーダンスの周波数依存です。RC並列が周波数に対して作る挙動は /power/ac-impedance-phasor/ のインピーダンスの考え方そのもので、低周波ほど拡散項が支配的になります。1RCは計算が軽く組み込みBMSで広く使われ、2RC以上は精度が要る用途で使います。R0・R1・C1 などのパラメータは温度とSoCに依存するため、ルックアップテーブルで持つのが定石です。

クーロンカウントのドリフトとOCV補正

もう一系統の推定法が クーロンカウント(電流積分法) です。SoCの定義そのものに直結します。

クーロンカウント:

  SoC(t) = SoC(0) − (1/Q) ∫ η·I dt

  Q : 満充電容量(Ah)  η : クーロン効率  I : 電流(放電を正)

電流を時間積分するだけで、瞬時的には非常に正確です。しかし二つの弱点があります。第一に 初期値 SoC(0) を別途与える必要がある。第二に、電流センサに微小な オフセット誤差 があると、それが積分で時間とともに溜まり、SoCが一方向に ドリフト します。10mAのオフセットでも1日積分すれば0.24Ahの誤差になり、長時間連続使用で無視できなくなります。さらに分母の Q 自体が劣化で減るため、古いセルでは誤差が拡大します。

そこで両者を組み合わせます。クーロンカウントは短時間で正確だがドリフトする、OCVは絶対基準だが静置時しか使えない ── この 相補的な関係 を利用します。

OCV較正とクーロンカウントの役割分担

基本戦略は、使用中はクーロンカウントでSoCを刻一刻と更新し、十分に静置した機会(EVなら駐車後、長時間放置後)に端子電圧をOCVとみなしてOCV-SoC曲線から真のSoCを読み、クーロンカウントの積分値を「リセット(再較正)」します。短期はクーロンカウント、長期の基準はOCV、という役割分担です。

拡張カルマンフィルタによるSoC推定

OCV較正は静置という条件待ちが要ります。これを待たず、走行中に等価回路モデルを使って連続的に両者を融合するのが カルマンフィルタ です。電池は OCV-SoC やパラメータが非線形なので、線形化した 拡張カルマンフィルタ(EKF: Extended Kalman Filter) を使います。

考え方は、(1)等価回路モデルで「次の端子電圧」を予測し、(2)実測した端子電圧と比べ、(3)その誤差(イノベーション)でSoC推定値を補正する、という予測-補正のループです。

EKFのループ(概念):

  状態 x = [SoC, V1, (V2)]   観測 = 端子電圧 V

  予測: クーロンカウントで SoC を進め、RC式で V1 を進める
        → モデルから端子電圧 V_pred = OCV(SoC) − I·R0 − V1 を計算

  更新: 残差 = V_measured − V_pred
        カルマンゲインで残差をSoC等に配分して補正
        共分散(不確かさ)も更新

EKFの強みは、クーロンカウントの即応性とOCVの絶対基準性を、不確かさ(共分散)の大小に応じて自動で重み付け融合 する点です。電流が安定して端子電圧が信頼できる局面では電圧の補正を強め、急変動でモデル予測が当てにくい局面ではクーロンカウントを重視する、という配分が原理的に出てきます。OCV-SoC曲線が平坦なLiFePO4では電圧から得る情報が乏しく(傾き dOCV/dSoC が小さくゲインが効かない)、EKFでも推定が難しくなる点は実装上の要注意点です。

内部抵抗増加と容量フェードからのSoH推定

SoCが「いまの残量」なら、SoH(State of Health)は「劣化の度合い」です。SoHは単一の量ではなく、二つの独立した劣化軸 で捉えます。劣化機構の詳細は /power/battery-degradation-bms/ に譲り、ここでは推定の観点で整理します。

劣化軸物理量現れ方推定の手がかり
容量フェード満充電容量 Q の低下走行距離・使用時間が短くなる完全充放電のAh計測、dV/dQ解析
パワーフェード内部抵抗 R0 の増加高負荷で電圧が落ち込み出力制限電流ステップ時の電圧降下、EISのR成分
SoHの代表的な定義:

  容量SoH = 現在の満充電容量 Q_now / 初期容量 Q_BOL
  抵抗SoH = 初期抵抗 R0_BOL / 現在の抵抗 R0_now
            (または増加率 ΔR0/R0_BOL で表す)

  寿命の目安: 容量SoHが80%(EOL)。R0が初期の2倍前後で
              パワー不足とされることが多い。
  (BOL=寿命初期、EOL=寿命末期)

容量フェードの直接測定は満充電から空までの完全サイクルでクーロン量を測ることですが、実使用では稀です。そこで部分充放電の電圧-容量関係を解析する 差分電圧解析(dV/dQ)/インクリメンタルキャパシティ解析(dQ/dV) を使い、ピーク位置のずれから容量損失や析出を推定します。

最も実用的なのは、SoC推定に使う EKFをパラメータ推定に拡張 する方法です。状態ベクトルにSoCだけでなく R0 や Q を含めて同時推定(あるいは時定数の異なる二重EKF)すれば、走行データだけから内部抵抗の増加と容量の減少を オンラインで追跡 できます。R0の増加はパワーフェードSoHに、Qの減少は容量SoHに直結します。

SoCとSoHは絡み合う ── だから同時推定が効く

クーロンカウントの分母 Q は容量SoHそのもので、Qを誤るとSoCもドリフトします。逆にR0を正しく持たないと等価回路の電圧予測がずれ、EKFのSoC較正が狂います。SoCとSoHは独立に解ける問題ではなく相互依存しており、等価回路モデル上で両者を同時推定する枠組みが本質的に有利なのはこのためです。セル間ばらつきの是正は /power/cell-balancing/ を参照。

まとめ

  • SoCの絶対基準は静置時の OCV で、OCV-SoC曲線(充放電で経路が違う ヒステリシス あり)で対応づける。LiFePO4は曲線が平坦でOCVから読みにくい。
  • 使用中の端子電圧はOCVから内部抵抗とRC緩和の分だけずれる。これを Rint/Thevenin(1RC/2RC)等価回路 でモデル化し、真のSoCに対応する電圧を取り出す。R0・R1・C1 は温度とSoC依存でテーブル化する。
  • クーロンカウント は瞬時に正確だがセンサオフセットで積分ドリフトする。静置時の OCV較正 で定期リセットし、両者を 拡張カルマンフィルタ(EKF) で不確かさに応じて自動融合するのが標準。
  • SoH は容量フェード(Q低下)とパワーフェード(R0増加)の二軸で評価。EKFにR0・Qを含めて同時推定すれば走行中に劣化を追える。SoCとSoHは相互依存するため同時推定が有利。基礎は /power/lithium-battery-internals//power/battery-degradation-bms/ を参照。

電源 Article

バッテリーモデル:等価回路・SoC・SoH推定を実務で読む

TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。

解決すること

バッテリー

比較で見る軸

難易度: advanced / カテゴリ: 電源 / タグ数: 6

導入後に効く点

クーロンカウント(電流の時間積分)は瞬時には正確だが電流センサのオフセット誤差が積分でドリフトする。これを静置時のOCV測定で定期的に再較正し、両者を融合するのが拡張カルマンフィルタ(EKF)によるSoC推定。

先に潰すリスク

用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。

数字・仕様の読み方
難易度
advanced
カテゴリ
電源
タグ数
6

判断チェックリスト

  • 自社の用途が「バッテリー / BMS」に近いか確認する。
  • 強みである「SoCの基準は開放電圧OCVだが、内部抵抗とRC緩和で端子電圧はOCVからずれるため、Rint/Thevenin等価回路でこのズレをモデル化して取り除く。OCV-SoC曲線には充放電で経路が異なるヒステリシスがある。」が本当に評価軸になるか確認する。
  • 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
  • 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
  • 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
  • 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。

次に確認する観点

バッテリーBMSSoC推定SoHカルマンフィルタバッテリーBMSSoC推定