Skip to content

BMS 电池管理系统入门

概念速览

  • BMS (Battery Management System):监控 / 保护 / 均衡电池组的电路板
  • 核心功能
    • 保护:过充、过放、过流、短路、过温、低温
    • 均衡:让电芯电压差 ≤ 50 mV (否则容量打折扣)
    • 通信:上报 SOC (State of Charge) / SOH (State of Health)
    • 充电控制:CC-CV 阶段切换
  • 机器人 / 无人机常用:12 V / 24 V / 48 V Li-ion (18650 / 21700) 或 LiPo (6S / 12S)

三种电池对比

LiPoLi-ion (18650)LiFePO4
能量密度200 Wh/kg250 Wh/kg90 Wh/kg
放电倍率20-50C3-5C3C
循环寿命300-500500-10002000+
安全⚠️ 刺穿 = 燃烧较好最安全
价格 (¥/Wh)1.51.01.2
适合场景无人机 / 比赛移动机器人 / 储能储能 / 工业

电池组基本参数

flowchart TD
    A["1 节 18650<br/>3.7V 标称 · 4.2V 充满 · 2.5V 放空<br/>3000 mAh"]
    B["3S1P = 3 串 1 并<br/>11.1V 标称 · 12.6V 充满 · 7.5V 放空<br/>3000 mAh"]
    C["3S4P = 3 串 4 并<br/>11.1V 标称 · 12.6V 充满 · 7.5V 放空<br/>12000 mAh"]
    D["13S8P = 13 串 8 并<br/>48V 标称 · 54.6V 充满 · 32.5V 放空<br/>32 Ah = 1.7 kWh<br/>(常见移动机器人)"]
    A -->|"×3 串联"| B
    B -->|"×4 并联"| C
    C -->|"重新串并联"| D

BMS 保护阈值 (典型 13S Li-ion)

保护项阈值动作
单体过充> 4.25 V切断充电
单体过放< 2.5 V切断放电
总电压过充> 54.6 V (13S)切断充电
总电压过放< 32.5 V (13S)切断放电
充电过流> 0.5 C限流
放电过流> 1.5 C (瞬时 3C)切断
短路> 10 C切断 (μs 级)
充电低温< 0 °C禁止充电 (锂枝晶)
放电高温> 60 °C切断
均衡启动任意单体 > 3.5 V被动均衡 100 mA

通信协议

CAN bus (机器人主流)

// CAN 报文 (CAN 2.0B, 250 kbps)
struct BMS_CAN_Frame {
uint32_t can_id; // 0x1800_xxxx (厂家自定义)
uint8_t dlc; // 8 bytes
uint16_t voltage; // 0.1 V 单位 (12.6 V = 126)
int16_t current; // 0.1 A 单位 (有符号, 充 + 放 -)
uint8_t soc; // %
int8_t temp_max; // °C
uint16_t cycles; // 循环次数
};
# ROS 2 接收 BMS 报文 (socketcan)
import can
bus = can.interface.Bus(channel='can0', bustype='socketcan')
msg = bus.recv() # blocking
soc = msg.data[4] # 0-100

SMBus (18650 BMS 板常见, 充电 IC 主导)

  • 协议:I²C-like,时钟 100 kHz
  • 用途:读 Smart Battery Data (SBDS) 标准寄存器
  • 缺点:单主机,无 CAN 实时性

UART / RS485 (工业 BMS)

  • 用途:上位机轮询 SOC / 远程监控
  • 协议:Modbus RTU (主流) / 厂家私有协议

选型速查

场景推荐方案价格 (¥)备注
12 V 移动底盘 (≤ 5 kg)3S Li-ion + 30 A BMS200-4005 A 充电
24 V 服务机器人7S Li-ion + 60 A BMS + CAN500-1000平衡车 / 扫地机
48 V 移动机器人13S Li-ion + 100 A BMS + CAN1500-3000G1 / H1 同款
无人机 6S6S LiPo + 30C + 无 BMS (PMU 替代)800-2000PMU 自带保护
储能 (家用)16S LiFePO4 + 200 A BMS + RS4853000-50005 kWh 储能

寿命与维护

循环寿命 vs DOD

循环次数 = f(放电深度 DOD)
100% DOD → 500 cycles
80% DOD → 800 cycles
50% DOD → 1500 cycles
20% DOD → 4000 cycles

储存

  • 长期不用的电池:充到 40-60% + 阴凉 (15-25°C) + 每 3 个月补电
  • 满电存放 = 容量衰减快 / 空电存放 = 过放损坏

常见故障

症状根因修法
容量腰斩单体电压差 > 100 mV (均衡失败)手动均衡 + 检查 BMS 均衡电流
充电到 80% 跳绿灯充电 IC 误判 / 温度保护查温度传感器 + 标定
0°C 充电后起火没禁低温充电 (锂枝晶)换带低温保护的 BMS
急加速电压骤降内阻过大 (老化)测内阻 (交流注入法) · 换电池
CAN 不通终端电阻 120Ω 没接CANH / CANL 各加 120Ω

📋 复现条件

类别必备备注
硬件13S BMS (推荐 Daly / JBD / JK) · 13S Li-ion 组¥200-500
工具万用表 · USB-CAN 适配器 (¥100)PEAK / CANable
软件candump (Linux) · BMS 上位机
时间接线 2 h · 配置 BMS 1 h · 跑循环 1 天全套
难度⭐⭐⭐ 中需要懂 CAN 协议
预算¥300-1000 (BMS + CAN 适配器)电池另算

⛔ 别这么做 (Anti-patterns)

❌ 错误做法💥 后果⚠️ 风险范围
不要在 0°C 以下给 Li-ion 充电锂枝晶 → 内部短路 → 起火🔴所有 Li-ion
不要把电池刺穿 / 弯折 / 加热热失控 = 燃烧🔴所有锂电池
不要没 BMS 直接用裸电芯单体过充过放 = 爆炸🔴所有锂电池组
不要长期 100% SOC 存放容量衰减快 30%🟡储能 / 工业
不要混用新旧 / 不同厂家电芯容量不一致 → 短板效应 → 寿命腰斩🟡电池组
不要用大电流充电而不监控温度热失控🔴充电

🚨 风险总览 (Risk Matrix)

风险等级含义例子
🟢 低改错可回滚 / 几分钟恢复储存 SOC 不对
🟡 中需要重新刷机 / 重装 / 1-2 小时恢复混用电芯,100% SOC 存放
🔴 高不可逆 / 烧板 / 安全风险0°C 充电,刺穿电池,没 BMS

参考资料