|
本帖最后由 Paderboy 于 2016-5-5 15:08 编辑 . K/ { t0 O3 N2 E% t 多谢与非网和ST 提供的超值STM32L073RZ-Nucleo 开发板。。这个是测试板是基于STM32L073RZ-Nucleo开发板为核心的,锂电池8s主动均衡管理控制器。。* m `7 Q2 u6 L. _ - ~: @) P" |3 ^! E 因为时间有限,基于STM32L073RZ开发的测试是基于STM32F0系列的锂电池8s主动均衡管理控制器上直接移植过来的。 使用了CubeMx+HAL实现了所需的所有功能。。这里要赞一个。。移植超级方便。。 L0和F0的差别主要是L0系列是低功耗版本,又集成了EEPROM。。所以只需要修改下数据存储。基本都可以通过Cube配置外设,直接移植了。。。。 ![]() ; d- w; U" M" X& S* x0 L! O 最后用基于STM32L073RZ-Nucleo锂电池8s主动均衡管理控制器的演示视频。。因为只有晚上有时间移植。。所以测试时间比较短,光线也不好。还请大伙谅解下哦。。。 。。) V& O! ^: x' E+ O+ [/ A2 W+ C' g* k" O9 c4 T' O; @$ o- s 先概述下主动和被动均衡的差异和利弊吧。。以下是个人拙见,有不对的陈述还请,大师纠正。。。。 目前市场上被动均衡的控制器可以说非常的多,主要是用电阻消耗掉多余的能量,来达到稳压" j2 ?4 L& p f# A m 保护单体电池不被过压冲坏(鼓包)。。如果能把需要消耗掉的能量,转移到低压的单体电池9 r; J. p. K: d1 {& q; k W& z9 X. M; E 那样电池能量的使用效率可以有很大的提高。并且减少,发热对电池组的寿命影响。。。' l( n: Q3 N/ o9 T6 b' m: u 锂电主动均衡控制器和被动均衡控制器的差异,主要是主动均衡控制器可以利用其他单体: w& j$ }" b- v, o# ^ 高出的电压,使用DC隔离降压模块转移到低压的单体电池上。。所谓的"取长补短"达到均衡电池的同时又能提高电池能量的使用效率。一般的被动均衡控制器只能向下均衡(只能控制电阻导通发热) 主动均衡的优点弥补的被动均衡的短板,可以向下充电补偿。把这2种均衡方式结合使用,可以& L: S( Q8 |( b4 o# F, u1 j 提高均衡效果和发热量。。: n& t# [) w) V# \# @ 接下来说说,主动均衡工作原理。。使用巡检采样,得到所有通道里的电池组电压值,然后确定最大和最小的压差。。4 n# `! R" K8 J' o6 \5 F: z 根据不同的压差判断使用主动或被动均衡。。每次只能均衡一个通道。。。1 I" v P3 u( ?8 i4 T 如果过压或者低压,达到了设置上限或下限。。直接关闭输入或输出通道。。以保护电池组。。/ s# D0 B; T* l) W. k 如果长期处于低压。。到达系统内部设定的下限。。会自动断开均衡控制器供电电源。。以保护电池组,不会被消耗所有的电能,导致电池组报废。。 先来个项目框架结构---以及STM32L073RZ-Morpho硬件接口图: t+ N' R0 d# S1 ^3 t- O
接下来。。。先介绍STM32L073RZ-Nucleo配置: 1.配置系统主频32Mhz 使用内部晶振! a4 m& k7 Q' ^- o( t2 X" P / @3 q3 c( t% @# m) D/ p, R 2.配置PC13,PC14,PC15为中断按键,通过按键设置均衡参数 - `& t5 D% d' {$ W0 B0 W( b 3.配置SPI2+PC4,PB1,PB2,PB11为LCD控制显示输出 - A3 G: K4 K- H' b+ {/ ?! G" z 4.配置串口2作为Wifi或者BLE通讯预留接口。。空闲中断+DMA) W! {# b) w: J8 I9 E9 w 5 X# ~1 z' E5 k 5.配置ADC 4个通道,ADC1,ADC4内部温度和内部参考电压 用于电池电压和NTC温敏电阻的数据采样: a: p0 Z8 ?- {1 o+ i! {0 ~ 7 ]% E6 r4 Q! c 6.配置PC5,PC6,PC8,PC9作为电池单体通道逻辑切换控制(抱歉具体IC型号暂时保密)。。。 7.配置PA11,PA12,PA5作为主动均衡,被动均衡和DC隔离供电低压保护控制。。7 @7 [) D" N2 h! O* n+ W% E % V" a. i' Z; x; k6 }
) M, X' u+ K* X- a4 L3 a0 \# D2 c' c% ~
) U4 Q$ Q! V$ }) G% Q% @
以下是,部分的程序截图。。。抱歉(目前原理图和程序还无法分享。。还请见谅。。)( z$ G6 e$ d3 { c1 v3 B6 n: u
! {: [# t; g/ S+ M5 E/ x% `
+ j: t$ {$ g! C2 N
3 G% G Y) B' {: \. o1 } 0 a: A) E' \) |% P7 } 来几张PCB截图吧。。。
2 K7 s# f1 D; P8 e
好了,最后实物测试截图。。. H0 u; Z/ g& }* ]) a2 O
: Z8 \- {0 C& B" x+ P2 i
X5 z% T9 j d, p
; ]- u7 Y% [ y# r2 y
' {; p1 P u$ U* i 最后,来2张我基于STM32F0系列开发的BMS-16S铁锂主动均衡保护板。。应用中的截图。。。
, m) n& H" P! _3 ?3 _+ W 6 R# W, U3 ^9 H |
微信公众号
手机版
这不是普通的光耦。。是可以有一定负载能力的。。。光耦mos可以支持长时间的过载电流(例如 1a电流)。。就可以通过mcu配置通道,巡检采样电池数据,处理后给低压电池充电(通过隔离dc降压隔离后,再通过降压ic降到合适的电压,并到需要均衡的电池上(均衡时间由mcu控制))。。。。
谢谢讲解。我最初还说怎么没用MOS管呐。原来是这样。但是似乎光耦的价格科比mos管高多了
BMS要是不带屏幕就不爽了。。。这样非常直观。。。全部数据可以方便查看。。。。
光耦(通道切换)。。。目前可以支持800ma的主动均衡。。。。
应该是光隔。