
本帖最后由 Paderboy 于 2016-5-5 15:08 编辑 多谢与非网和ST 提供的超值STM32L073RZ-Nucleo 开发板。。这个是测试板是基于STM32L073RZ-Nucleo开发板为核心的,锂电池8s主动均衡管理控制器。。 3 t4 W7 R% {1 A' Y+ D* P ! m! a. R& C9 j3 e# W, R# _ 因为时间有限,基于STM32L073RZ开发的测试是基于STM32F0系列的锂电池8s主动均衡管理控制器上直接移植过来的。8 Z, _- @' _; v# J, b: x1 a( l 使用了CubeMx+HAL实现了所需的所有功能。。这里要赞一个。。移植超级方便。。) v& X1 m* D1 S4 D, ] L0和F0的差别主要是L0系列是低功耗版本,又集成了EEPROM。。所以只需要修改下数据存储。基本都可以通过Cube配置外设,直接移植了。。。。 ![]() 7 x( d. B" s+ D C8 K9 f- c 最后用基于STM32L073RZ-Nucleo锂电池8s主动均衡管理控制器的演示视频。。因为只有晚上有时间移植。。所以测试时间比较短,光线也不好。还请大伙谅解下哦。。。 ![]() 先概述下主动和被动均衡的差异和利弊吧。。以下是个人拙见,有不对的陈述还请,大师纠正。。。。 目前市场上被动均衡的控制器可以说非常的多,主要是用电阻消耗掉多余的能量,来达到稳压 保护单体电池不被过压冲坏(鼓包)。。如果能把需要消耗掉的能量,转移到低压的单体电池- _4 W6 @- D2 L% _( S 那样电池能量的使用效率可以有很大的提高。并且减少,发热对电池组的寿命影响。。。 锂电主动均衡控制器和被动均衡控制器的差异,主要是主动均衡控制器可以利用其他单体6 `& m' R; J( y; U! o 高出的电压,使用DC隔离降压模块转移到低压的单体电池上。。所谓的"取长补短"达到均衡电池的同时又能提高电池能量的使用效率。一般的被动均衡控制器只能向下均衡(只能控制电阻导通发热)$ n' r* q& ^$ H2 Z9 I8 m( U 主动均衡的优点弥补的被动均衡的短板,可以向下充电补偿。把这2种均衡方式结合使用,可以4 o2 d& J7 L/ U6 V! i% v9 r1 }0 F 提高均衡效果和发热量。。' U% o" Z1 _. H" A 7 n& w8 q$ r' {& N/ `( b$ v7 d 接下来说说,主动均衡工作原理。。使用巡检采样,得到所有通道里的电池组电压值,然后确定最大和最小的压差。。4 ^& L( N: _; s# }( w5 H/ p8 } 根据不同的压差判断使用主动或被动均衡。。每次只能均衡一个通道。。。 如果过压或者低压,达到了设置上限或下限。。直接关闭输入或输出通道。。以保护电池组。。 如果长期处于低压。。到达系统内部设定的下限。。会自动断开均衡控制器供电电源。。以保护电池组,不会被消耗所有的电能,导致电池组报废。。 & G2 Y% T5 ~8 q' H2 }8 @ 先来个项目框架结构---以及STM32L073RZ-Morpho硬件接口图:8 w( e* ^) \* V4 I. }; \3 t ![]() 6 D* A7 b/ U, c# l6 [$ S) ^ ![]() 接下来。。。先介绍STM32L073RZ-Nucleo配置: @: {# w3 `3 _! @ 1.配置系统主频32Mhz 使用内部晶振 2.配置PC13,PC14,PC15为中断按键,通过按键设置均衡参数! G8 q8 Y |0 }6 U0 {$ ~; e 3.配置SPI2+PC4,PB1,PB2,PB11为LCD控制显示输出 4.配置串口2作为Wifi或者BLE通讯预留接口。。空闲中断+DMA 5.配置ADC 4个通道,ADC1,ADC4内部温度和内部参考电压 用于电池电压和NTC温敏电阻的数据采样 ( N: F5 ~: c. [) U+ j) D, e 6.配置PC5,PC6,PC8,PC9作为电池单体通道逻辑切换控制(抱歉具体IC型号暂时保密)。。。: V3 m; Q7 x& l 7.配置PA11,PA12,PA5作为主动均衡,被动均衡和DC隔离供电低压保护控制。。 ![]() ![]() 7 r. g' `0 ^8 K# i# d/ X# d ![]() " l1 i& k. W8 z, u ![]() " r( t& P7 ^0 w) o ![]() / ?( I8 E5 ]0 Z1 l ![]() 5 U- J0 R: s% H4 ` 以下是,部分的程序截图。。。抱歉(目前原理图和程序还无法分享。。还请见谅。。)1 m4 m7 `% Y5 T$ S3 N+ J% s& K' h ![]() , n$ T" Z; `, ^/ P% o# l ![]() ![]() ; |2 L; B: E, q( S/ B/ E: ] ![]() ) M# ?& w( W ?/ R @2 I ![]() r# S2 A1 o/ S" w7 | ![]() 来几张PCB截图吧。。。2 e; o# p) E+ k( U& ]. E4 B ![]() ![]() , C" r4 k7 Q% y+ f2 o ![]() 好了,最后实物测试截图。。 ![]() / M' v, |! b) q* c& D' Q ![]() ![]() $ M: B8 x; R8 k; n u! I ![]() 8 Q7 L$ W' v+ I4 T0 | ![]() * ~) j: q, t, k1 s 最后,来2张我基于STM32F0系列开发的BMS-16S铁锂主动均衡保护板。。应用中的截图。。。 ![]() ![]() 1 z2 L5 a! y; s p) A8 A 5 X8 a1 c! `( W |
STM32如何分配原理图IO
STM32ADC过采样及几种ADC采样的处理方法
分享一个STM32L031的串口调试程序
基于STM32L051使用CubeMX生成工程文件ST系列芯片通用经验分享
基于STM32L051开始添加需要的代码经验分享
STM32L051测试I2C协议设备的添加经验分享
基于STM32L051测试Flash和EEPROM的读写
基于STM32L051串口测试与Enocean模块通讯问题
基于STM32L0的EEPROM读写经验分享
基于STM32L0 ADC使用HAL库关于校准问题经验分享
这不是普通的光耦。。是可以有一定负载能力的。。。光耦mos可以支持长时间的过载电流(例如 1a电流)。。就可以通过mcu配置通道,巡检采样电池数据,处理后给低压电池充电(通过隔离dc降压隔离后,再通过降压ic降到合适的电压,并到需要均衡的电池上(均衡时间由mcu控制))。。。。
谢谢讲解。我最初还说怎么没用MOS管呐。原来是这样。但是似乎光耦的价格科比mos管高多了
BMS要是不带屏幕就不爽了。。。这样非常直观。。。全部数据可以方便查看。。。。
光耦(通道切换)。。。目前可以支持800ma的主动均衡。。。。
应该是光隔。