1、查看电池的放电曲线,通过ADC采集电池当前电压。去估计电池电量
比如早期的手机,电量用格子表示。这种方式,电量不准确,而且如果放电电流过大,电压拉低会造成误判。
2、使用库仑计,通过测量电池的放电电量和充电电量去判断电池的电量。
比如现在的智能手机,基本上都有这个。使用库仑计需要一个好的策略自动标定电池的电量,而且随着电池的老化,最大容量需要自动修改。
在实际使用中,建议两种方式进行结合。
测量电池的当前电量,目前唯一简单有效的方法就是测量开路电压OCV,然后根据电池特性以及放电曲线查找该开路电压OCV对应的电量SOC,根据电量SOC和电池的额定容量,计算剩余电量。假设以三元锂离子电池为例,额定电压为3.7V,满电状态电压为4.2V,如果测量到电池的电压为3.982V,根据SOC对应OCV曲线,可以大致计算得到SOC值约为82%,如果电芯容量为3500mAh(毫安时)那么3500*0.82≈2870mAh.
如果使用STM32去测量电池剩余重量,只需要测量电池电压即可,其他参数需要通过自己的测试获得,然后根据计算公式计算电量即可。
电池的电量是与电池的电压有关的,可以通过测量电池的电压测量
不过一些电池管理芯片是可以支持输出电量的多少的,可通过通讯读取出来的
充电宝上的一般都是使用单片机检测电池电压,与满电压做对比粗略计算
你也可以使用库伦计IC,这样更精准。