尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

两轮BMS 电源模式管理 (PMM) 详解

两轮BMS 电源模式管理 (PMM) 详解
📅 发布时间:2026/7/6 3:23:48

BMS 电源模式管理 (PMM) 详解

基于量产 60V BMS(STM32F0 + SH367306 AFE),拆解 PMM 五大系统模式的定义、切换逻辑与联动关系。


一、五大系统模式

PMM.h:45-52:

┌──────────┐ 上电 ──→│ kIdle │ 空闲模式 └────┬─────┘ │ ┌─────────────┼─────────────┐ │ 充电电流 │ 放电电流 │ 超时/欠压 ▼ ▼ ▼ ┌─────────┐ ┌─────────┐ ┌──────────┐ │ kChg │ │ kDsg │ │ kSleep │ │ 充电模式 │ │ 放电模式 │ │ 休眠模式 │ └─────────┘ └─────────┘ └──────────┘ │ ┌──────────┐ │ kReset │ 复位模式 └──────────┘
模式充电 MOS放电 MOS预充 MOS
kIdle空闲(防打火使能)闭合断开通断时序
kIdle空闲(防打火关闭)闭合闭合断开
kChg充电闭合闭合断开
kDsg放电闭合闭合断开
kSleep休眠断开断开断开
kReset复位断开断开断开

充放电 MOS 是背靠背串联的,正常工作时(充电或放电)两个都闭合。只在保护触发时才单独关断——forbidCharge关充电 MOS,forbidDisCharge关放电 MOS。充电时放电 MOS 闭合可以减少体二极管导通损耗(MOSFET Rds(on) 远小于体二极管 Vf)。


二、模式切换逻辑

核心在kPMMMode_IdleModeM(PMM.c:256-297),只根据电流方向判断:

if(SystemCurrent<-500mA)→ kChg// 检测到充电电流if(SystemCurrent ≈0或 防打火中)→ kIdle// 维持空闲if(SystemCurrent>500mA)→ kDsg// 检测到放电电流

各模式内部也有返回空闲或切换到其他模式的逻辑:

kIdle ──→ 充电电流 ──→ kChg kIdle ──→ 放电电流 ──→ kDsg kIdle ──→ 超时+欠压 ─→ kSleep kChg ──→ 电流归零 500ms ─→ kIdle kChg ──→ 放电电流 ──────→ kDsg (拔充电器直接走) kDsg ──→ 电流归零 1s ────→ kIdle kDsg ──→ 充电电流 ──────→ kChg (插充电器直接走)

三、各模式详解

3.1 空闲模式 (kIdle)

系统的"大厅"——不上不下不充不放时都在这里。

内部还有一个四级子状态机管理防打火(PMM.c:33-39):

kIdleInit → kIdleFirePrevent → kIdlePowerOn → 转 kDsg

同时在此模式下判断休眠条件:静置超时、单体欠压、单体超低压。

3.2 充电模式 (kChg)

充电电流触发,充电 MOS 和放电 MOS 均闭合。

进入后做的事:

  • 满充检测:超过 3 分钟重置 Idle 子状态机
  • 禁止充电/放电检查:FDR 故障标志位会强制关断对应 MOS
  • 满充断开:收到BatFullChrgState == kFullChg时断开充电 MOS
  • 退出:电流归零 500ms → kIdle;出现放电电流 → kDsg

3.3 放电模式 (kDsg)

放电电流触发,闭合充放电 MOS。

进入后做的事:

  • 运行限流调节kPMMMode_CurLimitRegulate(占空比增减)
  • 检测充电电流 → 切 kChg
  • 检测电流归零 1s → 切 kIdle
  • 禁止放电标志位强制关断放电 MOS

3.4 休眠模式 (kSleep)

全部 MOS 断开,MCU 低功耗。

四种触发类型(PMM.h:57):

类型触发条件典型场景
1上位机强制命令远程关停
2单体欠压电池快没电,保护性休眠
3单体超低压紧急,电池严重亏电
4静置超时 + SOC<20%用户长时间不用

唤醒方式:休眠前 MCU 将唤醒源配置为 GPIO 边沿中断,然后进入 STOP 模式。唤醒后硬件复位,软件根据中断标志识别唤醒源:

唤醒源硬件说明
通信唤醒(ComWakeup)UART/RS485 RX 引脚边沿中断充电柜或 4G 模组发来数据时触发
充电唤醒(ChgWakeUp)充电器插入检测引脚上升沿充电器插入瞬间电压跳变触发

各休眠类型的唤醒配置(PMM.c:709-743):

类型ComWakeupChgWakeUp说明
1 强制✅✅通信或充电都能唤醒
2 欠压✅✅通信或充电都能唤醒
3 超低压❌✅只能充电唤醒,通信已关闭以省电
4 静置✅✅通信或充电都能唤醒

超低压休眠(类型 3)是最极端的情况——电池电压已经低到不足以维持通信模块,所以关闭通信唤醒,只保留充电器插入这一条"救命"路径。

3.5 复位模式 (kReset)

强制全关 + 状态归零。

触发:上位机下发复位命令。所有 MOS 断开,内部计数器清零,回到kIdleInit。

3.6 存储模式(kIdle 下的子状态)

存储模式不是独立的 PMM 顶层模式,而是空闲模式下的低活动优化状态。MCU 仍在运行,MOS 同空闲模式,只是降低非必要操作的频率。进入后 4G 模组上报battery_state = 6。

进入条件(PMM.c:608-618):空闲模式下满足全部四种条件且持续60 分钟——

if(SystemMode==kIdle&&循环次数>3// 电池已完整充放过至少 3 次&&无系统故障&&有密钥)// 防盗:无密钥不进存储{if(StoreMode_Cnt>=60分钟)BmsStoreMode_flg=1;}

进入后的变化:

模块正常空闲存储模式
DSM 数据存储间隔10 分钟2 小时(减少 Flash 擦写)
4G 上报状态battery_state=4battery_state=6
退出条件—有电流 / 出故障 / 密钥被清 → 立即退出

与休眠模式 (kSleep) 的区别:

存储模式休眠模式
MCU正常运行STOP 低功耗
MOS同空闲全部断开
通信保持关闭等唤醒
本质闲着,少干点活彻底关,等唤醒
恢复有电流立退必须唤醒源触发

设计意图:电池长期放在仓库或柜子里不用时,没必要每 10 分钟写 Flash 浪费寿命,把存储间隔拉到 2 小时就够了。用户一取用,立退恢复正常。


四、对外的 SystemStatus

PMM 内部用SystemMode做状态机,对外用SystemStatus上报(PMM.h:19-24):

kPMMIdle=0// 空闲kPMMChging=1// 充电中kPMMDsging=2// 放电中

SystemStatus被 LED 指示灯、4G 模块、Modbus 寄存器使用,告知外部"电池在干什么"。它和内部SystemMode不是一一对应——比如在kIdle里跑防打火子状态机,对外仍报kPMMIdle。


五、工厂模式 vs 运营模式

这不是 PMM 的系统模式,而是 EEPROM 中FuncConfig2.FactoryMode的一个配置位,影响多个模块的行为:

标志位= 0= 1
FactoryMode运营模式工厂模式(下线检测)

由上位机在生产线下线时写入,出厂前置 0。三处行为差异:

模块运营模式 (0)工厂模式 (1)
PMM 限流SOP 查表动态限流(35A~1.5C)固定 1.5C,避免检测时触发限流
防盗 AntiLossbBatOperate = 1,防盗使能bBatOperate = 0,防盗禁用
存储模式循环 >3 次后可进入不能进入

本质:生产线上做下线检测时,防盗、限流这些保护逻辑不能干扰测试流程。出厂前把标志位从 1 改成 0,电池才进入正常运营状态。


本文基于量产 BMS 代码分析。

相关新闻

  • 2024年全国外贸工艺品资讯公司选购指南:3招帮你挑对靠谱公司
  • 相机拓扑全局关联建模,CameraGraph 实现视频孪生全域目标无缝接力追踪
  • UDS 29服务实战:CANoe 16.0配置PKI证书实现双向认证3步验证

最新新闻

  • GHelper:为华硕笔记本用户量身打造的轻量级硬件控制解决方案
  • 基于本地AI工具构建高效学习系统:从药学备考到通用学习流程自动化
  • 三星固件下载终极指南:Bifrost如何让官方固件获取变得简单快速
  • 如何利用Arsenal-Image-Mounter实现突破性磁盘镜像挂载:一站式专业指南
  • 2026年6月文章一览
  • 2023年十大被利用最多CWE漏洞深度解析与防御实战指南

日新闻

  • AI智能体安全防护框架AgentGuard:从原理到实战部署指南
  • KMX63与PIC18F26K40硬件组合及低功耗设计实践
  • 基于YOLO13改进的门体检测模型:C3k2模块与PoolingFormer技术解析

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号