バッテリの充電率を推定するためにもっとも素朴な方法は流れる電流を積算することです。
ただし、これは電流センサの精度に依存してしまいます。
容量$C$とすると
$$
SOC(t) = \frac{1}{C} \int_0^{t}i(\tau)d\tau
$$
となりますから、例えば電流センサに常に一定のバイアスが乗ったとしましょう。
$$
i(t)=i(t)+i_0
$$
となりますので
$$
\begin{align}
SOC(t) &= \frac{1}{C} \int_0^{t}i(\tau)d\tau+\frac{1}{C} \int_0^{t}i_0 d\tau \\
&= \frac{1}{C} \int_0^{t}i(\tau)d\tau+\frac{i_0 t}{C}
\end{align}
$$
$i_0$が非常に小さかったとしても時間が経つほど誤差が積み上がります。素朴な方法ではありますが、以上のように電流の情報だけでは推定精度に不安が残ります。電流でなくバッテリの電圧を使った方法としてはカルマンフィルタを使った方法がメジャーですので、次はこれについて紹介したいと思います。