当前位置: 首页 > news >正文

基于单片机控制的锂电池充电和保护系统研究

摘要: 加强锂电池充电和保护,是锂电池实践运用中的一项关键技术。基于单片机控制的视角,结合其在电动自行车中的运用,探讨了单片机控制的优势和价值,分析了系统运行机理,提出了相应措施。
关键词:锂电池;单片机;充电;控制;保护
锂电池具有重量轻、能量高、自动电率低、使用寿命长、绿色环保等特点。作为绿色环保电池的首选,近年来,锂电池的应用日益广泛,不仅应用于电力储能、移动通信电源系统,而且延伸到交通动力、新能源储能动力等电源系统。如何加强锂电池充电和保护,已成为其运用中的一项关键技术。现基于单片机控制的视角,结合其在电动自行车中的运用,对其充电和保护系统作一分析和探讨。

一、单片机控制的优势

先恒流、再恒压,是锂电池充电通常采用的策略。从电路看,既可以采用“单路电流 + 均衡电路”充电,也可以采用多路并联充电。通过试验可知,两种方式各有特点,各有各的优点与弊端,后一种方式,虽然效率是前一种方式的 3倍,但成本较高。前一种方式,虽然成本较低,但在充电过程中,在恒流在变为恒压时,由于均衡电路不能关闭,使得电流在此电路中持续流通;当电压为 4.2V 时,由于均衡电路电流较大,从而降低了充电效率。

那么,如何加强对均衡电路的控制和对锂电池的保护,以提升充电的效率与效益?综合 3 种控制手段和方法(见表 1),其性价比较高的,当数单片机控制。在锂电池充电过程中,采用单片机控制手段,能够通过有效控制均衡电路,提高锂电池充电效率与效益。

二、单片机控制下的系统运行机理

主供电回路如下 :+48V 为开关电源的输出 ,CN1 接器接电池组 ,PMOS 管 Q2 是电源调整管,受单片机的 PWM 控制,可以调节电池组的充电电流。电池组的负端接有两个 25mΩ 的电阻,充电电流在这两个电组上产生电压,经过放大路送入单片机的ADC 电路,每个单粒电池组的电压也送入单片机的 ADC 电路 ,单片机实时监控充电电流和电压。
在该系统中,单组锂电池恒流充电电流、截止电压分别为3A、4.2V,保护电路最小放电压、最大输出电流分别为 3V、24A。 电动车电池组为 10 个电池组串连,充电截止电压为42V, 放电截止电压为 30V。其运行机制是:外部交流电源上电时,充电电路工作输出高电平 PG 信号,PG 信号便会将之传递给单片机,“命令”锂电池进行充电。此时电池组的电压和电流被单片机严格监控。
刚开始充电时电池电压较低 , 单片机控制控制充电电路工作于恒流状态,以恒定电流给电池组充电。充电电流被转换成电压信号送入单片机的 ADC 电路,实时测控充电电流。因为电池组采用串联方式,所以单体电池电压存在“非均衡”现象。在单片机对其监测过程中,如监测到单体电池电压接近 4.2V时,即该单粒电池接近“满电”。便会向均衡电路“传送”地址码,均衡电路在通过译码后,输出一个控制信号打开并联在单体电池上的均衡电路。而没有达“满电”的电池组两端的均衡电路关闭 , 该电池组以正常方式充电。这样可以提高该阶段的充电效率。

三、以单片机控制促进系统高效运行的措施

通过对充电保护系统的运动机理分析,我们可以看出,其高效运行的关键措施,在于对各个电路的设计和控制。就单片控制电路而言,首先应根据充电器,选择适宜的性价比高的单片机。针对电动自行车锂电池的运用实际,笔者在上述系统运行机理分析中,选用的单片机为 PIC16F877 型,该单片机具有5 个基本输入接口,共有 33 个引脚可以使用,具有 10 位 ADC,可以满足每个电池组的电压检测和电检测。多个数字输出接口用于控制均衡电路的控制 , 以及充电电路的控制。内部 FLASH空间有 8K,数据空间 368 字节 ,13位数据指针,整个寻址空间 8K。指
令码 14 位,这是 PIC 单片机的特色 ,因此较普通的 MCS51 单片机速度更快、数据处理能力更强,能够较好满足锂电池的充电需要。本系统的一大特色是加入了均衡电路,单片机检测每个单粒电池的电压和电流,及时将地址码传递给充电器,并由其译码之后,导通相应的均衡电路,对一些充电电流进行“分流”, 实现高效率充电。对与开关电源而言,采用单端正激电路,输出 48V/3A,当外电源插入时,并输出 PG 信号,这个信号被单片机检测到,自动打开功率 PMOS 管 , 开始对电池充电。这个 PMOS 管受单片机的 CCP 引脚控制 , 该引脚工作在 PWM 方式,单片机输出不同宽度的 PWM 信号控制 PMOS 管,从而控制电池组的充电电流。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 项目实战二
  • 利用Java调用人脸身份证比对接口
  • Prometheus监控Elasticsearch
  • 聚观早报 | Meta将推出新款AR眼镜;iPhone SE 4将升级显示屏
  • shell脚本教程学习
  • Qt:26.Qt项目:贪吃蛇游戏
  • redis全局唯一ID生成策略、countDownLatch、Lambda表达式总结
  • 《峡谷小狐仙-多模态角色扮演游戏助手》复现流程
  • Java IO模型深入解析:BIO、NIO与AIO
  • 为什么 FPGA 的效率低于 ASIC?
  • SpringBoot之拦截器(Interceptor)
  • Rust代码答疑报错|Python一对一辅导答疑
  • sql查询报错空指针怎么解决?
  • Anything LLM ,构建自己的 RAG 架构 LLM,学习自己的知识库
  • HCIP之PPP协议(PAP认证,CHAP认证)、GRE、MGRE综合实验
  • JAVA 学习IO流
  • Javascript设计模式学习之Observer(观察者)模式
  • Java到底能干嘛?
  • Java反射-动态类加载和重新加载
  • k8s如何管理Pod
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • mongo索引构建
  • Python_网络编程
  • Python学习之路16-使用API
  • Quartz初级教程
  • vue-router 实现分析
  • Vue--数据传输
  • Windows Containers 大冒险: 容器网络
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 初识 beanstalkd
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 关于for循环的简单归纳
  • 官方解决所有 npm 全局安装权限问题
  • 汉诺塔算法
  • 理解在java “”i=i++;”所发生的事情
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 免费小说阅读小程序
  • 使用权重正则化较少模型过拟合
  • ionic入门之数据绑定显示-1
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ​浅谈 Linux 中的 core dump 分析方法
  • # Apache SeaTunnel 究竟是什么?
  • #Z0458. 树的中心2
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • ( 10 )MySQL中的外键
  • (12)Linux 常见的三种进程状态
  • (3)选择元素——(17)练习(Exercises)
  • (8)STL算法之替换
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (LeetCode 49)Anagrams
  • (ZT)薛涌:谈贫说富
  • (第30天)二叉树阶段总结
  • (二)学习JVM —— 垃圾回收机制
  • (二十九)STL map容器(映射)与STL pair容器(值对)