点 击深 蓝 字 体 关 注 我 们~~~

欢迎大家积极投稿,会有惊喜等着你哦

▼  征稿 | 你写不写,福利就在这里~~

——///  摘要 \\\——

☟☟☟

根据相关国家标准和安标国家矿用产品安全标志中心关于锂电池的技术要求,设计了一种STM32F105VCT7和LTC6804-2为核心,基于RT-Thread实时操作系统的矿用防爆电动车锂离子蓄电池管理系统。本文详细介绍了锂电池管理系统的硬件和软件设计,经实际测试,本锂离子蓄电池管理系统能够有效地监测电池的电压、温度并完成电池均衡。

引言

随着民用电动车的普及和发展,防爆电动车也在煤矿逐渐得到推广和应用,锂电池凭借其在体积、重量、能量密度等方面具有极大优势,已经成为电动车能量来源的首选。锂电池管理系统可以准确估测电池组的荷电状态、动态监测动力电池组的工作状态、实现单体电池间的均衡[1]、可以保证锂电池的用电安全,提高锂电池的续航能力、延长锂电池的使用寿命。

目前,煤矿井下的锂电池管理系统多应用于硐室、救生舱的后备电源,这种锂电池管理系统监控的电池串数多为8串或16串,远小于防爆电动车上数百串的锂电池数量,而且监控对像也多为中小容量电池。而应用于民用电动车的锂电池管理系统,在电路设计上,不适用于煤矿井下环境;在性能参数上,不满足相关行业标准和安标国家矿用产品安全标志中心发布的相关文件要求。因此研制应用于矿用防爆电动车锂离子蓄电池管理系统是十分必要的。

针对煤矿特殊的应用环境,根据相关国家标准和安标国家矿用产品安全标志中心发布的相关技术要求,本文设计了一种矿用防爆电动车锂离子蓄电池管理系统,着重阐述了电池成组方式、电池均衡策略及锂电池管理系统的硬件和软件设计。

01

 锂离子蓄电池管理系统的组成

图1 锂离子蓄电池管理系统的主要组成

防爆电动车锂离子蓄电池管理系统主要由主控制单元、单体锂电池信息采集单元、电池组电流采集、充电桩和整车控制器通讯电路、绝缘电阻采集模块、输入输出继电器控制、液晶显示等七部分组成,系统组成框图如图1所示。

系统的总体工作流程由主控制单元来进行调度协调。单体锂电池信息采集单元采集电池的电压、温度数据并通过SPI总线传输给主控制器,主控制器根据这些数据做出相应的指示和报警动作,如电池过压报警、欠压报警、高温报警、低温报警等。电池组的放电或充电电流由霍尔电流传感器按比例转换为电压信号交给主控制器进行采集,结合电池的电压、温度数据估算SOC,并控制电池均衡、充电桩启停、输入输出继电器导通关断等。主控制要将采集到单体电池数据、电池组电压、电流及报警信息、绝缘电阻等信息显示在液晶屏上,并通过CAN总线发给整车控制器。

02

电池成组方式验总结和有益探索

电池典型的成组方式有先串联再并联和先并联再串联,如图2所示。在连接可靠性方面,先串联再并联的成组方式要优于先并联再串联[2-3]。但是,根据安标国家矿用产品安全标志中心发布的《矿用隔爆(兼本安)型锂离子蓄电池电源安全技术要求(试行)》(以下简称安全技术要求)的相关规定,对于矿用隔爆型设备,禁止锂离子蓄电池以并联连接的形式置于隔爆腔内,因为不能保证并联电池的内阻是完全一致的,内阻不一致则会导致在充放电时并联电池的电流分配不均,电流分配不均又会加剧内阻的不一致性,使并联电池之间有可能存在互相充电的现象,是一种不安全因素,所以在本设计中所有电池只能采用串联连接的成组方式。

图2 电池典型成组方式

03

锂电池类型、容量和数量器

根据《关于矿用产品使用的锂离子蓄电池安全标志管理意见(暂行)》的规定,在本设计中使用磷酸铁锂电池,此种电池的安全系数较高,其单体额定电压为3.2V,在《安全技术要求》中规定了运输车辆用电源中锂离子蓄电池的额定容量不超过100Ah,所以单体电池的最大能量为320Wh,在本设计中即采用容量为100Ah的磷酸铁锂电池,同时在《安全技术要求》也规定了电池组总额定能量不能超过32000Wh,所以根据式(1)

(1)

计算可得,在单体电池容量为100Ah时,电池组总串数不能超过 100串。

04

电池均衡策略

在锂电池的制造过程中,由于制造工艺和材质的原因,造成即使是相同批次出厂的同型号电池在电压、容量和内阻等方面存在不一致性,这种不一致性造成成组电池在利用率、使用寿命、安全性等方面的性能远不及单体电池[4-5]。但在使用了具有均衡管理功能的电池管理系统后,就能够大幅提高电池组的整体性能、有效的延长电池组的使用寿命、大大降低整车的使用和维护成本。

主要的电池均衡策略分为主动均衡和被动均衡。主动均衡是对电池组在充电、放电或者放置过程中,电池单体之间产生的容量或电压差异性进行均衡,来消除电池内部产生的各种不一致性。而在这一过程中,涉及到能量的转移,能量转移一般有两种方法,一种是将能量高的单体电池能量均衡到能量低的电池,另一种是将电压(容量)高的单体电池的能量转移给一个备用电池,再由备用电池转移到其它电压(容量)较低的电池。

被动均衡的工作原理是通过对电压的采集,发现串联单体电池之间的差异,以设定好的充电电压的“上限阈值电压”为基准,任何一只单体电池只要在充电时最先达到“上限阈值电压”并检测出与相邻组内电池差异时,即对电池组内单体电压最高的那只电池,通过并联在单体电池的能耗电阻进行放电,以此类推,一直到电压最低的那只单体电池到达“上限阈值电压”为一个平衡周期。

主动均衡相比被动均衡,具有平衡电流大,均衡速度快,效率高、能量损耗小的优点,但是由于主动均衡技术复杂、成本高,而且结构复杂之后故障率也会高所以在本设计中,采用被动均衡策略。

05

锂电池管理系统的硬件设计

5.1主控单元


本锂电池管理系统通讯接口较多,而且用于矿用防爆车辆,工作环境较为恶劣,对主控器在工作温度、接口数量等方面要求较同,通过综合比较,在本设计中机采用STM32F105VCT7作为主控单片机,它是由意法半导体生产的互连型微控制器,工作主频可达72MHz,内置ARM Cortex™-M3内核,具有2个支持CAN2.0B协议的CAN总线接口、1个全速USB OTG接口、3个SPI总线接口,其输出速率最高可达18MHz,另外还有5个USART接口[6-7],并且还有2个12位的ADC转换器,可以保证对模拟电压的高精度采样。STM32F105VCT7可在-40 °C ~105 °C的温度范围内正常工作,在一定程度上提高了锂电池管理系统的可靠性和稳定性。

5.2电池信息采集的硬件设计

根据《安全技术要求》的规定,在单体电池容量大于10Ah或电池组总额定能量大于200Wh时,需要有锂电池管理系统。不仅要检测电池组的总电压、总电流和电池组容量,还要检测所有单体电池的电压和温度,并且对这些参数的测量误差提出了具体要求,如表1所示[8-9],对这些测量信息还要具有显示和故障报警功能。

表1 锂离子蓄电池(组)参数测量误差要求

参数

单体电池电压值

单体电池温度

电池组电流

电池组电压

电池组容量

误差

≤0.5%

±2℃

≤0.5%

≤0.5%

≤5%

根据以上要求,在本设计中采用美国凌力尔特公司生产的LTC6804-2芯片来监测单体锂电池的电压、温度等数据。这是凌力尔特公司研制的第三代电池组监视器,一片LTC6804-2最多可以测量12节电池,12节电池的连接形式必须为串联,对电池电压的总测量误差不大于1.2mV,并且可以在290us内完成对12节电池的电压测量,为实现高噪声抑制可采用较低的数据采集速率[10-11]。

在一条SPI总线上可挂接多片LTC6804-2,通过相应片选信号线进行选通,这样就可以实现对数百串锂离子电池同时监控[9]。因此可以采用8片LTC6804-2来实现对96串锂电池数据的采集,这样就可满足单体电池容量为100Ah时,每个防爆锂电池箱内的锂电池数量不能超过100串的要求。

连接示意图如图3所示。

图3 主控制与多片LTC6804-2连接示意图

由于一片LTC6904-2可采集以12串锂电池,所以在本设计中以12串锂电池为一个采集组,SPI总线上挂接8片LTC6804-2即可完成对96串的锂电池的电压监测。

LTC6804-2提供了5个GPIO引脚,它们均可配置为模拟输入,可以用来采集电池温度数据,GPIO4和GPIO5还可以被配置为接口的SDA和SCL端口。要采集12串电池的温度信息,5路模拟输入显然不能满足要求,可以增设多路模拟开关即可扩展模拟通道。模拟开关使用凌力尔特公司生产的LTC1380芯片,它是一个8路模拟选择器,并且还具有接口,正好可以连接至LTC6804-2的GPIO4 和 GPIO5形成的接口上,要测量12路模拟信息,使用两片LTC1380即可满足要求,并且需要将GPIO1配置为模拟输入。

将一个10K的精确电阻与一个NTC(负温度系数热敏电阻)相串连,一端接地,另一端连接至LTC6804-2的VREF2引脚,形成一个典型的分压电路,通过测量计算可知NTC电阻,再通过查表即可得知此电池的温度数据,在每一串电池的极耳上固定这样一个电路即可测得每一串电池的温度。

电路连接图如图4所示。

图4多路模拟开关扩展电池温度采集通道

LTC6804-2的S1引脚至S12引脚可以用于对单体电池做被动均衡。如果一串电池中的某一节过度充电,S引脚可驱动一个外部的P沟道的MOSFET开关器件来控制合适的放电电阻对单体电池进行放电,达到被动均衡的目的,如图5所示。其中Rd是放电电阻,最高可实现120mA的均衡放电电流。

图5 被动均衡电路

5.3 电池组电流采集电路


由于锂电池组输出电流很大,电流可能达到100A以上,在误差允许范围内,采用了北京森社电子生产的CHB-200TF闭环霍尔电流传感器,其最大误差为0.3%小于表1中关于电池组电流误差0.5%的规定。

霍尔电流传感器按2000:1的比例把电池组电流缩小,为方便主控制器采样并减小采样误差,通过高精度采样电阻把此等比缩小的电流值转变电压值,再经运算放大器放大到一定倍数后,供主控制器的AD进行采集。由于既要采集锂电池组的放电电流,还要采集其充电电流,所以此运算放大器不但要指示被检电流的幅值,还要能指出被检电流的方向,即此电流为放电电流还是充电电流。

凌力尔特公司生产的LT1999-10可满足上述要求,它可以工作在-40℃~125℃的整个温度范围内,增益误差低于0.5%,输入失调电压保证低于1.5mV[12]。电池组电流采样电路如图6所示。

图6 电池组电流采样电路

5.4 数据存储电路


在实际使用中,锂离子电池管理系统要存储电池组电压、电流、电池组SOC、充电电压、充电电流等重要信息,以便下次启动时可直接加载,并且还要存储系统运行日志,为此需要一片外部FLash芯片来存储这些数据,此Flash芯片的型号为AT45DB641,由adesto公司生产,其存储容量为64Mbit即8M bytes,通过SPI总线与主控单片机STM32F105VCT7相连,连接电路如图7所示。

图7 SPI Flash存储电路

06

锂电池管理系统的软件设计

本锂电池管理系统中除了有采集电池电压、温度、电流和电池均衡等对实时性要求很高的任务外,还有两路CAN通讯、液晶显示、输入输出控制等多个任务,鉴于系统较为复杂,所以在锂电池管理系统中,需要实时操作系统对这些任务进行调度,在本设计中采用的是国产的RT-Thread实时操作系统。

6.1 RT-Thread实时操作系统

RT-Thread是一款由中国开源社区主导开发的开源嵌入式实时操作系统(遵循GPLv2许可协议),它不光包含有实时操作系统内核,还有一些很具特色的外围组件,如SPI总线标准接口、优化过的文件系统、USB协议栈、Finsh Shell等,内核和外围组件均可通过配置文件进行配置和裁剪[13]。

RT-Thread实时操作的内核采用ANSI C语言编写,移植性很强,适合于多种体系结构的处理器和编译器,用户可以按需要对其配置和裁剪,此实时操作系统具有很高的可靠性和稳定性,具有一套名为Finsh Shell的交互工具,类似于Linux 平台下的在命令行的操作接口,能够实现系统调试、查看各任务或线程的运行情况,如剩余堆栈、任务状态,还可以将一些参数信息实时打印出来[14],给开发者提供了极大的方便,这些优点使它在众多实时操作系统中脱颖而出,得到广泛应用,也受到国内很多大专院校、企业及开发者的认可,目前 RT-Thread 已经支持在STM32F105VCT7平台上运行。

综上可以看出,RT-Thread实时操作系统的各项功能,完全可以调度和运行采集电池电压、温度、电流等信息、电池均衡、CAN通讯、液晶显示等任务。


6.2 主要线程设计


在本系统中,共设计了6个线程,以满足锂电池管理系统的各项功能,分别是系统上电初始化线程、主控制器与LTC6804-2通讯线程、充电和电池均衡线程、主控制器与整车控制器的CAN通讯线程、与绝缘电阻检测模块的CAN通讯线程和液晶显示线程等。下面主要介绍初始化线程、主控制器与LTC6804-2通讯线程、充电与电池均衡线程等3个线程的工作流程。

①系统上电初始化线程的主要功能是在系统刚上电时,初始化必要的硬件外设如串口、系统时钟、SPI总线接口、CAN总线控制器等及系统内核、fatFS文件系统和Finsh Shell等系统组件,并进行系统自检,如绝缘电阻是否超限、与LTC6804-2通讯是否正常等,流程图如图8所示。

图8 系统初始化线程流程图

② 主控制器与LTC6804-2的通讯线程的主要功能是获取相应电池采集组各单体电池的电压和温度数据,每100ms与一片LTC6804-2通讯一次,800ms完成对所有电池电压、温度数据的采集,获取到这些数据后,要判断是否有电池过压、欠压、高温、低温,是否有过压保护失效、欠压保护失效以及电压、温度采集线开路的故障情况,并要做出相应的报警指示。流程图如图9所示。

图9 主控制器与LTC6804-2的通讯线程流程图

③ 充电与电池均衡线程的主要功能是与充电桩通讯,设定充电电压、电流、充电时间等,控制充电桩的启停,并根据电池的电压和温度数据,控制电池均衡,直至有电池达到上限阈值电压并且最高电压与最低电压的差值小于设定值,并完成充电过程中的SOC估算,流程图如图10所示。

图10 充电与电池均衡线程流程图

07

结语

在满足国家标准和安标国家矿用安全标志中心相关文件的前提下,设计了矿用防爆车锂离子蓄电池管理系统,经实际测试,此锂电池管理系统能够有效地提高电池的一致性,延长电池组的续航时间和电池寿命,并且具有数据采样精准,采样速度快,SOC计算准确,电池均衡速度快的优点。

另外,针对锂离子蓄电池管理系统安装在防爆腔体内,不便维护的特点,还设计了CAN bootloader引导程序,可以通过CAN总线对锂电池管理系统进行升级维护,极大地减少了现场维护的工作量。

参考文献:

[1] 乔思洁.锂电池管理系统的研究与设计[D].青岛:中国海洋大学,2009.

[2] 王震坡,孙逢春.电动汽车电池组连接可靠性及不一致性研究[J].车辆与动力技术,2002(4):11-15.

[3] 王震坡,孙逢春.电动汽车电池组连接方式研究[J].电池.2004(8):279-281.

[4] 谢斌.电动汽车锂电池组SOC辨识与均衡管理研究[D].广州:华南理工大学,2013

[5] 罗雨.动力锂离子电池制备工艺对一致性影响研究[D].长沙:湖南大学,2012

[6] 意法半导体(中国)投资有限公司.STM32 Reference Manual(RM0008)[EB/OL].2016-11-10.http://www.stmicroelectronics.com.cn/content/st_com/zh.html

[7] 意法半导体(中国)投资有限公司.STM32F105xx STM32F107xx Datasheet(DS6014)[EB/OL].http://www.stmicroelectronics.com.cn/content/st_com/zh.html

[8] 安标国家矿用产品安全标志中心.矿用隔爆(兼本安)型锂离子蓄电池电源安全技术要求(试行)[EB/OL].2016-11-10.http://www.aqbz.org.

[9] 肖林京,常龙,张瑞雪,翁峰.矿用防爆柴油机车锂离子蓄电池启动电源系统设计[J].工矿自动化,2014(10):61-64

[10] 凌力尔特公司.LTC6804-1/LTC6804-2 Multicell Battery Monitors [EB/OL].2016-11-10.http://www.linear.com.

[11] 徐钧,蔡欣荣.基于LTC6804-2的锂电池SOC应用研究[J].仪表技术,2014(6):28-31

[12] 凌力尔特公司.LT1999-10/LT1999-20/LT1999-50 High Voltage, Bidirectional Current Sense Amplifier[EB/OL].2016-11-10.http://www.linear.com.

[13] 李起伟.基于SIM808的CAN总线监控和维护终端 [J].单片机与嵌入式系统应用.2016(7):50-53.

[14] 尹贺,郝志刚,董鑫正,文全刚.RS274_NGC在RT_Thread操作系统中的改造与应用[J].计算机与网络, 2016(13):64-68.

基金项目:煤科院技术创新基金资助项目(2016CX05)

作者简介:李起伟(1983-),男,河北省邯郸市人,任职于煤炭科学技术研究院有限公司,助理研究员,硕士,现主要从事嵌入式系统与煤矿安全监测监控系统的研究工作。

E-mail:liqiwei@ccrise.cn。

如果想加入RT-Thread Nano交流群,与RT-Thread官方团队直接交流,请添加微信13924608367,注明rt-thread,直接拉进群。

END

有一种爱叫点赞

基于RT-Thread的矿用防爆电动车锂离子蓄电池管理系统的研究与设计相关推荐

  1. 基于rt thread smart构建EtherCAT主站

    我把源码开源到到了gitee,https://gitee.com/rathon/rt-thread-smart-soem 有兴趣的去可以下载下来跑一下 软件工程推荐用vscode 打开.rt thre ...

  2. 基于移动终端的大学生心理健康交互管理系统的研究与设计

    基于移动终端的大学生心理健康交互管理系统的研究与设计 摘要:近年来随着科技的不断发展和进步,移动智能设备逐渐融入到了我们的日常生活中.为了应对大学生在心理健康管理方面的大量需求,提出了一种基于移动端设 ...

  3. 基于JSP的固定资产管理系统的研究与设计

    陕 西 科 技 大 学 镐 京 学 院 毕业设计(论文)任务书 信息工程 系 电子信息工程 专业 信工081  班级 学生: 张XX 题目:基于JSP的固定资产管理系统的研究与设计    毕业设计(论 ...

  4. 基于微信小程序的智能停车场管理系统的研究与设计

    前言 2017年一组数据显示, 我国停车位缺口率已经达到50%, 停车场的平均空置率也高达51. 3%. 区域拥堵. 乱停车.找车难. 收费难. 停车管理成本搞. 停车场管理效率底下.市政停车规划采集 ...

  5. 基于GD32F103C8T6添加RT Thread nano设备框架并添加串口设备(以控制台console( uart0 )为例)

    最近没事琢磨了一下使用设备框架的问题.因为将串口注册到设备框架可以应用十分丰富的软件包. 于是就整理了一下手上的工程,重新将工程梳理了一遍. 像这样是十分清爽了,其中RTOS是操作系统源代码 并且学习 ...

  6. 关于RT thread系统节拍时钟的配置

    关于RT thread系统节拍时钟的配置                  -----本文基于rt-thread-3.1.3版本编写 首先,使用RTthread OS时,要配置(或者明白)它的系统节拍 ...

  7. RT Thread根据开发板制作BSP方法

    之前一直不懂怎么使用RT Thread的软件包,感谢网上的大神,看了你们的博客后大概了解一些,在此做下记录.用RT Thread软件包需要RT Thread的系统,但是RT Thread和RT Thr ...

  8. RT Thread利用STM32CUBEMX和RT Thread studio来创建模板工程

    (1)RT Thread利用STM32CUBEMX来创建模板工程 1.参考文档: 基于 CubeMX 移植 RT-Thread Nano:RT-Thread 文档中心 注意:串口2必须使能异步模式(启 ...

  9. xpt 2046的触摸屏 rt thread设备驱动框架

    1 基于rtt 开发触摸屏驱动 准备使用rtt 框架 , 驱动xpt 2046的触摸屏, 翻阅大量资料发现, 大部分文章强调的是时序图, 而且很多代码要么直接操作寄存器, 要么是io 口模拟, 只能用 ...

最新文章

  1. 如何安装Android SDK Emulator
  2. oracle split函数用法_「干货」Python字符串中的split方法
  3. 回溯法采用的搜索策略_急性阑尾炎最典型的症状为:
  4. linux下配置SVN搭建 centos svn安装配置
  5. 悲痛!临近年关,一位 IT 创业者自杀,曾卖房给员工发工资
  6. [技术分享] 融云开发案例核心代码分享
  7. oracle 01157,Oracle数据库启动时出现ORA-01157和ORA-01110问题
  8. 凯文米特尼克-《欺骗的艺术》[完整中文版][DOC][PDF]
  9. 图形化UDP发包小工具
  10. 【USACO】 录制唱片
  11. python量化之路:获取历史某一时刻沪深上市公司股票代码及上市时间
  12. php js广告,JavaScript_用JS调用谷歌 AdSense广告的方法, 具体的google广告的js文件做 - phpStudy...
  13. XCVU13P FPGA开发板
  14. 调查显示:SD-WAN部署迅猛增长,MPLS不会消失
  15. PaddleHub一键视频动漫化
  16. Oracle 查询的十个小技巧
  17. Maven - 8、大型Maven项目,快速按需任意构建
  18. Python实现阳历转农历功能
  19. 博通Broadcom SDK源码学习与开发4——ECOS系统数据流
  20. 【经验】展会结束后跟进客户最佳方案

热门文章

  1. 这些矫健的背影、可亲的脸庞,你记住了吗
  2. 戴尔笔记本电脑更换固态重装系统
  3. 利用Python批量下载学生PDF教材
  4. kafka对接mysql_【Canal】利用canal实现mysql实时增量备份并对接kafka
  5. java原生打印实现自动调用系统默认打印机
  6. 2016年3月26日作业 质量管理和人力资源管理
  7. Redux 知识点梳理和实践
  8. 翰墨颂华章一一 易鸿斌、傅黎明、谢秉世、唐建华 四人书法展成功举办
  9. 2021.11.9MySQL基本语句以及数据库于Unity的连接
  10. 重中之重基础-Redis介绍