【研究笔记 02】认识 BMS:从电池管理到快充算法的研究起点
Brian · 发布于 2026/9/30 · 更新于 2026/9/30
Brian2026/9/30
配图为基础概念示意。设备外观和颜色不代表具体产品、接线方案或钠电与 LFP 混合组包。
参加「初焰·纳宙」AI for Science 黑客松,我选择的议题是:
储能系统能否持续自我改进?从钠电与磷酸铁锂的充放电差异出发,研究电池管理系统(BMS)如何利用运行数据改进策略、迭代模型与架构,探索递归自我改进(RSI)的可能。
第一篇笔记整理了相关关键词。这一篇,我想先把 BMS 看得更具体一些:它管理什么?长什么样?关注哪些数据?怎样判断它做得好不好?
沿着这些问题,我也找到一个值得继续研究的方向:复现已有的电池快充优化算法,再探索它的优化方法能否继续改进。目前这还是候选方向,尚未开始复现实验。
一、系统层级:BMS 在储能系统中做什么?
可以先从一颗电芯看起。多颗电芯可以组成模组,模组再组成电池包。随着电池数量增加,需要有人持续检查每部分的状态,并协调它们的使用。
BMS就是电池管理系统。它读取电压、电流和温度,估计剩余电量,发现异常,并参与保护、均衡和充放电管理。
但储能系统的工作不只有管理电池。还涉及什么时候充放电、怎样转换电能等问题。可以用三个简单问题区分常见的系统:
| 系统 | 主要关注的问题 |
|---|---|
| BMS 电池管理系统 | 电池现在是什么状态,允许怎样使用? |
| EMS 能量管理系统 | 整个系统什么时候储能,什么时候供能? |
| PCS 功率变换系统 | 怎样完成电能转换并执行相应的功率控制? |
三者需要交换信息、协同工作,具体分工会随系统设计变化。Sandia 储能管理系统资料
因此,研究 BMS 之前,要先说明管理什么电池、服务什么场景。本项目以钠电储能为背景,以磷酸铁锂(LFP)的研究作为参考;具体电芯型号、容量和运行条件仍需进一步确定。
二、组成形态:BMS 是电路板还是算法?
两者都有。实际 BMS 通常由硬件和软件共同组成。
硬件负责获得信号和执行动作,例如采集电压与温度、传递通信信息,以及配合开关和均衡电路工作。
软件负责组织这些信息和动作。例如,计算剩余电量,判断是否超过运行限值,决定何时报警,以及怎样协调不同工作状态。
从功能分布来看,常见形态可以这样理解:
| 形态 | 简单理解 |
|---|---|
| 集中式 | 主要功能集中在一个管理单元 |
| 分布式 | 测量或管理功能分散到靠近电芯的节点 |
| 模块化 | 每个模块有采集单元,再由上层控制单元协调 |
这些是理解 BMS 的常见分类,实际产品的命名和边界可能不同。BMS 综述
BMS 也有可以阅读的开源代码。例如 Libre Solar展示了实际固件,foxBMS介绍了驱动、诊断和应用算法怎样分层。
这帮助我认识到:“改进 BMS”可以有很多入口。可以提高测量质量,可以改进电量估计,也可以研究充电策略。需要先选择一个具体问题,再讨论改进方法。
三、相关参数:哪些是读出来的哪些是算出来的?
看资料时,容量、温度、SOC、内阻等词经常一起出现。但它们并不是同一种信息。
| 类别 | 例子 | 简单理解 |
|---|---|---|
| 电芯条件 | 材料体系、容量、电压范围、允许倍率 | 我们管理的是什么电池? |
| 测量数据 | 电压、电流、温度、时间 | 仪器或传感器读到了什么? |
| 估计状态 | SOC、SOH、可用能量与功率 | 根据数据和模型,推测电池现在怎样? |
| 模型参数 | 内阻、开路电压与 SOC 的关系 | 用什么规律描述电池? |
| 管理设置 | 电流限值、温度阈值、均衡条件 | 什么时候调整运行或触发保护? |
SOC是荷电状态,可以先理解为“还剩多少电”。它通常需要结合电流、电压和模型估计,并不是传感器直接读出的一个百分比。
SOH是健康状态,可以先理解为“相较于原来,电池衰退了多少”。不同研究可能用容量下降或内阻变化衡量,比较前要先确认定义。foxBMS 状态估计说明
容量常用 Ah 表示。
倍率则描述电流相对于容量的大小。例如,按 10 Ah 容量计算,1C 对应 10 A;这只是单位关系,不表示这颗电芯一定允许以该电流充电。
这些区别也影响钠电与 LFP 的比较。可以借鉴同一种计算方法,但电芯的特征曲线、模型参数和允许电流,需要分别查证。
四、评价指标:怎样才算管理得更好?
最初,我想到的是充电快、供电久、寿命长、损耗少。进一步整理后发现,需要把这些期待变成具体指标。
| 想知道什么 | 可以观察什么 |
|---|---|
| 测量准不准 | 电压、电流和温度的测量误差 |
| 剩余电量估得准不准 | SOC 的平均误差、最大误差,以及从错误初值恢复的时间 |
| 保护是否可靠 | 异常漏检、正常工况误报,以及保护动作延迟 |
| 均衡效果怎样 | 达到目标一致性的时间、损失的能量和额外温升 |
| 软件能否及时运行 | 执行耗时、内存和计算成本 |
| 充放电效果怎样 | 指定区间的充电时间、可用能量、效率与越界情况 |
| 长期表现怎样 | 指定使用条件下的容量保持和循环寿命 |
这是本项目用于阅读资料的指标清单,具体合格值还要查电芯要求、系统需求与适用标准。储能 BMS 可进一步查阅 GB/T 34131—2023,本轮尚未逐条核验标准正文。
评价时还有两个容易忽略的问题。
比较条件要一致。例如,充电更快是否伴随温升更高?供电时间更长,是否只是放宽了截止条件?只有把初始状态、负载和运行边界说清楚,比较才有意义。
结论范围要与实验相符。电量估计更准确,不会自动证明寿命更长;计算机模型中的收益,也需要进一步验证才能解释为真实电池收益。
本轮也查看了 Battery Archive等公开入口。它能帮助比较电池测试曲线,但不能当作完整 BMS 的排名。对当前项目而言,先找到可重复的比较方法,比寻找一个总分更有用。
五、候选方向:从一个已有的快充优化算法开始
认识 BMS 的组成后,我开始考虑把研究范围放在充电策略上:在满足充电要求的前提下,怎样找到更合适的充电方案?
一个值得继续阅读的项目是 battery-fast-charging-optimization。它对应 Attia 等人在 2020 年发表的论文《Closed-loop optimization of fast-charging protocols for batteries with machine learning》。
这项工作研究商业 LFP/石墨电芯,在固定的 0%—80% SOC、10 分钟充电条件下,从候选方案中寻找循环寿命更长的方案。这里的条件属于原论文实验,不是钠电的通用设置。论文全文
它的思路可以概括为:
- 尝试方案:选择一批分阶段充电方案,进行电池测试。
- 提前判断:利用较早的循环数据预测寿命,减少等待完整寿命实验的时间。
- 选择下一批:结合预测结果和不确定性,决定哪些方案值得继续测试。
这样,上一轮结果会影响下一轮选择。这就是这里所说的“闭环”。
从 BMS 的层级来看,这个项目位于充电策略研究和实验决策这一层。它输出值得测试的方案;这些方案未来怎样进入具体 BMS 或充电控制系统,还需要做接口、约束和硬件验证。
仓库中的几个文件也让研究对象更具体了:
| 代码入口 | 主要做什么 |
|---|---|
policies.py | 生成候选充电方案 |
closed_loop_oed.py | 读取前一轮结果,更新判断并选择下一批方案 |
sim_with_seed.py | 为充电方案生成模拟寿命,用于计算实验 |
目前已阅读这些代码,尚未运行复现。源码中的模拟器包含简化的热与退化计算、人为设定的寿命缩放和随机噪声,因此适合先研究搜索方法的表现,不能直接当作真实钠电寿命模型。模拟器源码
此外,主仓库的闭环脚本需要上一轮的寿命预测作为输入,早期预测的数据处理另有关联仓库。所以,跑通一个脚本、复现计算流程和重复原论文的电池实验,是不同层次的工作。
六、下一步问题:先复现什么再探索什么?
我目前倾向于将候选方向表述为:
以已有的 LFP 快充闭环优化算法为起点,先复现计算流程,再探索优化方法本身的改进,并研究迁移到钠电需要哪些数据和模型。
第一步是复现。先确认输入输出、数据和环境,尝试重放已有轮次,或在模拟器中跑通“选方案—获得结果—再选方案”。首先建立一个可以重复运行的原始算法基线。
第二步是比较。在相同候选范围和测试次数下,比较原算法、随机选择和修改后的方法。观察最终找到的方案在独立评价中的表现、达到目标需要多少次测试,以及结果在多次运行中是否稳定。同时记录计算时间和额外成本。
第三步才是探索 RSI。原算法根据数据更新对方案的判断,已经属于闭环优化。如果只是换一组充电电流,或者人工调一次参数,还不足以说明改进机制在自我改进。
在本项目中,一个可研究的 RSI 问题是:系统能否根据此前的搜索记录,提出并验证新的方案选择规则,再让通过验证的新规则参与后续搜索?例如,改变什么时候探索不确定方案、什么时候重复验证有希望的方案。
这个设想需要与继续使用旧规则的情况比较,而且评价规则和最终测试不能随候选修改而改变。即使模拟结果更好,也要继续检查它是否只是适应了某一个模拟器。
钠电迁移仍是关键的待解决问题。原项目提供的是 LFP 研究起点,钠电还需要自己的候选电流范围、运行约束和可靠的寿命评价依据。已有钠电脉冲与动态工况数据可帮助研究模型和状态估计,但不能直接替代不同快充方案下的长期寿命数据。
因此,这一篇先记录方向和依据。能复现到什么程度、是否具备开展 RSI 或钠电迁移实验的条件,要在下一轮资料与代码核查后判断。
七、参考资料怎么读?
建议先结合配图理解 BMS,再阅读快充论文的流程图和实验问题,最后进入代码。暂时不必从复杂公式或整套硬件实现开始。
| 阅读入口 | 重点关注什么 |
|---|---|
| BMS 综述 | 系统有什么功能,硬件与软件怎样组成 |
| Sandia 储能管理资料 | BMS、EMS 和 PCS 怎样分工 |
| foxBMS 文档 | 实际软件中有哪些模块 |
| Attia 等快充论文 | 优化什么、根据什么结果选择下一轮实验 |
| 快充优化代码 | 候选方案、反馈数据与优化器怎样连接 |
| 早期预测关联代码 | 原始循环数据怎样进入预测流程 |
| 钠电公开数据 | 已有哪些电芯和工况数据,仍缺哪些评价依据 |
今天的进展,是把“让储能系统自我改进”的宽泛问题,逐步落到一个可阅读、可检查的研究对象:电池充电策略的闭环优化方法。
BMS 的整体图景仍然重要。它帮助我知道,这个算法处于什么位置,需要什么数据,以及即使算法有改进,也还有哪些系统问题需要验证。
整理说明:本文整理于 2026 年 9 月 30 日,使用 AI 辅助检索、源码阅读、文字整理及配图。已核查相关公开资料,并静态阅读快充项目的方案生成、闭环优化和模拟器代码;尚未安装运行该项目、复现论文结果或开展电池实验。RSI 与钠电迁移均为候选研究方向。本轮查看的仓库版本为 0068fd0136bcd65884f5cd94b2b967c1ba73a668。
登录后可以留言