高效提升电池寿命和安全性 | 基于ACM32 MCU的BMS应用方案

news2025/5/19 20:26:38

电池管理系统(BMS)通过监控电池的状态,智能化管理及维护各个电池单元,从而防止电池出现过充电和过放电。优质的电池管理系统能够最大限度地延长电池整体使用寿命,有效保障设备安全。

BMS电池管理概述

BMS,即电池管理系统(Battery Management System),随着锂电池的广泛应用,BMS作为锂电池的“保姆”也越来越被大众所关注。相较于传统电池,锂电池具有更好的能力密度,更高的工作电压,更低的放电率。但锂电池在面对过充、过放等问题时,相对脆弱。由于锂电池组在生产制造和使用过程中存在的差异性,会导致电池单体之间天然就存在着不一致性。这种不一致性主要表现在单体容量、内阻、自放电率、充放电效率等方面。单体的不一致,会进一步导致过充、过放等问题,进而造成电池寿命下降甚至死亡或损坏。

图1 | 容量不一致时充放电过程示意图

如图1所示,由于电池单体的差异,在充电时,低容量电池充电已饱和,而较大容量的电池电量未满,此时对于小容量单体来说,则处于过充状态。相反,放电时,较大容量的电池仍然处于放电状态,而小容量电池电量已空。有研究表明,单体电芯20%的容量差异,会带来超过40%的容量损失。

而BMS模块则是为避免该问题的出现而存在。BMS会实时监测单体的容量,并采用电池均衡手段来保证电池的正常工作。将不同容量的单体比作体积不同的水桶,而电池的电量好比是水桶中存留的水。充放电时,BMS会将快满的“水桶”里面的“水”转移到较空的“水桶”中,以此来保证整体电池电量的均衡,避免出现过充和过放的问题。如图2所示。

图2 | BMS电池均衡示意图

上海航芯BMS应用方案

上海航芯推出的BMS应用方案,采用ACM32F403/ACM32G103系列MCU作为主控芯片,最高工作频率可达180MHz/120MHz,内置最大512KB的eFlash和最大192KB SRAM,满足一般BMS算法库的需求。内置2Msps/3Msps采样率12位ADC,实现对电芯电压、电流、温度等信号的高频采样。具有USB/UART/CAN/SPI等多种通讯接口,足以应对大多数应用场合(如需要485通信的两轮电动车,需要CAN接口的新能源汽车等)。基于ACM32F403/ACM32G103的BMS方案结构示意图如下图所示:

图3 | BMS系统框图

ACM32F4/ACM32G1主控芯片,通过ADC对敏感信号进行采样,并依照BMS算法库计算得到当前电池的SOC、SOH等数据,执行均衡以及热管理控制,保证电池处于正常的工作状态。当出现问题时,支持在线警报同时给出LED指示信号。整个系统的运行参数可以通过CAN/USB/UART等接口进行上报。

CONTACT US:sales@aisinochip.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/451232.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux使用Jenkins搭配Gitee自动化部署Vue项目

目录 一、环境准备二、Jenkins配置Node2.1 下载NodeJS插件2.2 配置node 三、新建任务-Vue项目四、配置Nginx 一、环境准备 Jenkins: Node:安装配置教程 建三个软链接,不然Jenkins会找不到 ln -s /usr/local/node-v14.18.2-linux-x64/bin/…

CDH 集成 Flink-1.14.3 过程与踩坑记录

一、资源准备与配置 1.1 项目文件下载与配置 #下载 flink-parcel 项目文件 [roothadoop105 ~]# git clone https://github.com/pkeropen/flink-parcel.git [roothadoop105 ~]# cd flink-parcel/ #编辑下载地址,看自己需求哪个版本 [roothadoop105 flink-parcel]# …

【后续】使用nvm替换nvmw作为nodejs的版本切换(亲测)

文接上篇,使用nvm替换nvmw作为nodejs的版本切换(亲测) 如图各种乱码,在vscoe中也是出现 真的好烦啊。看到提示的还是之前nvmw不能执行的各种报错。 XXX不是内部或外部命令,也不是可运行的程序或批处理文件。 决定&am…

【编译】JITAOT介绍与优劣

文章目录 JIT优劣 AOT优劣 二者区别来源 AOT 去年发布的 .NET 7 中引入了该功能,只是在 .NET 8 中进一步进行了改进。新版本中通过 Native AOT 发布的“Hello, World”应用程序体积进一步缩小,只有 .NET 7 的一半。 以 CoreCLR 为例,不做 AOT…

Linux进程信号(上)

目录 一:信号引入 二:信号保存方式 三:信号处理方式 四:查看Linux信号 五:信号捕捉 六:信号产生 一:终端按键产生信号 二:系统函数产生信号 2.1:kill(&#xff…

安全测试:配置管理潜在威胁

一、配置管理威胁有哪些 明文信息传输漏洞敏感信息泄露默认或可猜解用户账户会话重放攻击测试验证码缺陷http方法测试 二、明文信息传输和存储漏洞 漏洞描述: 页面中没有对传输的用户名和密码等敏感信息进行加密后传输。用户密码后台存储是否加密。 产生原因&a…

MySQL安装版步骤

百度网盘有安装版、解压包安装包以及visual插件 链接:https://pan.baidu.com/s/1XXvWa40FYX5mtqofW_knIg 提取码:ky2q 下载地址https://downloads.mysql.com/archives/installer/ 双击下载好的exe文件,选择Custom自定义安装,点…

内联函数-取决于编译器

内联函数 以inline修饰的函数叫做内联函数,编译时C编译器会在调用内联函数的地方展开,没有函数调用建立栈帧的开销,内联函数提升程序运行的效率。 内联函数完美解决了宏函数上述所以缺点,但是不是所有函数都要搞成内联函数&#…

CentOS7(一)安装和基础配置

文章目录 一、CentOs 7 下载与安装二、安装过程三、安装Ohmyzsh1、基础软件安装2、编辑 install.sh4、修改仓库地址5、修改shell6、编辑主题和插件7、刷新配置8、创建用户级别配置文件 四、研发环境配置四、centos不能访问github,速度慢五、防火墙相关六、wget 下载…

Scala中的Map 集合详解

目录 一、不可变长Map集合 1.map的声明与遍历 2.map的常用方法:get、getOrElse、keys、values、、: 二、可变长Map集合 三、Map的其他方法 key -> value 的语法形式实际上是用库中的隐式转换实现的,实际调用了 Map.apply 方法。Map.a…

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测 目录 多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-CNN-…

我看谁没看过

vue在新窗口打开页面方法 const { href } this.$router.resolve({path: "/officePlatform/addPrompt"});window.open(href, "_blank"); 添加圆形标志 h3::before {content: "";display: inline-block;width: 13px;height: 13px;background: va…

易点易动设备管理平台帮助化工企业实现设备高效管理

在现代化工企业中,设备管理和能耗监控是至关重要的。易点易动设备管理平台通过整合设备台账、巡检、维修、保养、备件管理、设备监控和能耗监控功能,为化工企业提供了一套全面、高效的解决方案。本文将详细介绍易点易动设备管理平台如何帮助化工企业实现…

JVM字节码分析

文章目录 1、类文件结构1.1、 魔数1.2、 版本1.3 、常量池1.4、 访问标识与继承信息1.5、 Field 信息1.6、 Method 信息1.7 、附加属性 2、字节码指令2.1、javap工具2.2、图解方法执行流程2.2.1 常量池载入运行时常量池2.2.2 方法字节码载入方法区2.2.3 main线程开始运行&#…

windows下另一种傻瓜式从零部署cuda环境的方式

前言 最近因为连续部署了两个深度学习环境,实在嫌烦了,于是摸索出一条简便的方式希望让人人都可以傻瓜式的快速部署,首先确保你的硬盘具有20G以上的空间,这里以部署torch的gpu版和让onnxruntime使用cuda加速为例,让我…

PDF.js源码使用总结

1、官网地址 pdf.js官网(http://mozilla.github.io/pdf.js/) pdf.js源码(https://github.com/mozilla/pdf.js) 版本选择:点击Tags 2、选择对应版本zip包下载、解压 在进行npm install之前 (注意:node.js…

【c++初阶】:引用

c入门 一.概念二.使用三.应用四.常引用五.引用与指针 一.概念 c语言中我们常用指针找地址,但在c中,忽略了指针(当然也可以使用指针)。常用引用这个概念。 二.使用 可以看到这里的b和c本质上都是a,只是不同的称呼罢了。…

【NestJs】数据库重构

上一篇文章详细了介绍nestjs 配置数据库,有不懂的小伙伴可以先查看上一篇文章【NestJs】使用连接mysql企业级开发规范在继续往下。 今天这一篇文章主要是针对配置数据库的重构,使用代码规范,方便后期维护。 当应用变得复杂 我们需要借用TypeO…

webstorm常用快捷键

webstorm作为前端代码JavaScript开发的利器,真的特别好用,我就总结一下我工作中经常用到的快捷键,有些快捷键是我自定义配置的,是以mac电脑来总结这篇文章的,请知晓: 自定义配置快捷键: 常用快…

SpringCloud源码探析(五)-网关Gateway的使用

1.概述 在微服务架构中,网关提供了统一的对外访问入口(自身跨一个或多个服务),它保证了内部服务对外暴露的合理性与安全性、降低了服务之间访问的复杂性,是微服务架构中至关重要的一部分。在SpringCloud中网关主要包含…