找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 17918|回复: 10
收起左侧

电动汽车锂电池管理系统(BMS)的开发与设计文档

  [复制链接]
ID:392072 发表于 2018-8-31 17:19 | 显示全部楼层 |阅读模式
摘要

在越来越追求清洁能源、环境保护的今天,电动汽车由于其零排放、能量利用率高 的特性脱颖而出,成为汽车行业可持续发展的一颗新星。电动汽车产业化迫不及待,而 动力电池的容量和安全性则是阻碍电动汽车推广和运营的难题。电池管理系统作为电动 汽车中核心组件之一,是解决电动汽车动力电池安全性问题、长效使用问题、能量管理 问题的关键技术。
文档通过分析常用动力电池——锂离子电池的相关特性,结合电动汽车电池的相关 情况,开发实现了一种简单的电池管理系统。通过该系统,能够测量电动汽车电池组的 电压、电流、温度等基本信息,并通过这些信息,利用开路电压法和安时积分法,结合 温度修正参数,估算电动汽车的剩余电量,并给出极限参考值告警,同时,提供用户参 数设定的交互方式。
本文结合已有国内外先进研究成果,结合系统的功能需求,研究电池管理系统的分 布结构,设计了主控板-巡检板双板系统。设计了巡检板电池基本信息检测电路,利用 应用于汽车电子的单片机做数据采样并设计剩余电量估算程序,通过总线传送处理信 息。设计了主控板用于用户交互(展示信息、设定参数、报警提示)和总线通信。最后 完善并实现了系统软硬件,进行调试。

ABSTRACT
Nowadays, people pay much more attention to clean energy and environmental protection, Electric Vehicle (EV) has been a trend in auto industry, owing to its advantage of zero-carbon-emission and high energy efficiency. However, the battery capacity and safeties have obstructed the progress of industrialization of EV. The Battery Management System (BMS), which is one of the core and key EV technologies, is a solution to battery safety problem, long-life problem, and power management problem.
By carrying out the analysis of common used lithium-ion battery cell characteristics, based on the relevant information of EV, a simple kind of BMS including a prototype has been developed and introduced. The system can measure the voltage, current, and temperature value of battery pack, whose basic information could be used to estimate the State of Charge (SOC) in the EV. A new method for SOC estimation, based on the combination of Open Circuit Voltage (OCV) measurements and Coulomb Counting method (or Ampere-Hour Integral method) including parameter modification, has been discussed. The system provide threshold alarm and user interaction---information display and threshold setting.
Based on the existing research result, and taking the system target requirement into account, my research focus on the distributed architecture, so that a host-board and sample-board system is designed. The sample board is mainly used for basic signal sampling, SOC algorithm calculating and CAN field bus communication. The host board is mainly used for user interact and bus communication.

0.jpg 0.jpg

1.1 课题研究背景及意义

当今时代,对清洁能源的要求越来越高,人们对环境保护、绿色能源应用的关注度 也日益加深。根据国家统计局 2015 年的数据,我国民用汽车拥有量达到 14598.11 万辆 [1]。传统燃油汽车的过量使用,导致了石油资源枯竭,尾气排放致使温室效应加剧,环 境污染加重。电动汽车作为对传统燃油汽车的节能环保替代品,备受关注。其实电动汽 车的起源相当之早,早在 19 世纪 70 年代,英国人罗布特戴维森就发明了世界上第一台 可用电动汽车[2],只是由于上个世纪内燃机的迅猛发展,燃油汽车普及,电动汽车退出 市场。但是自 20 世纪 90 年代以来,环境、能源问题使得人们的目光再次投向电动汽车。 不管是汽车制造商、政府还是环保公益组织,都对纯电动汽车的产业化抱以期望。
电池作为电动汽车的能量来源,首先其优点是十分明显的:第一,实现了零排放; 第二,节约了石油等非可持续能源;第三,能量效率高,利用率高。但是它同样存在着 安全性缺乏保障、行驶路程有限、充电不便且耗时长等问题。因而电池技术及其应用则 是制约电动汽车产业化的关键技术。电动汽车使用的电池不同于常见电子设备诸如手 机、便携式电子计算机中所使用的电池,电动汽车动力电池大多由大量的单体电池串并 联构成电池组后使用。动力电池串联节数多、放电电流大、容易温度过高,且电池组中 某些电池单体损坏,则影响整个电池组。电池单体的性能是电池组性能的短板,关系到 电池组的安全性,容量和使用寿命。
常见的动力电池有铅酸蓄电池、镍氢电池、锂离子电池等不同电池。自 20 世纪 90 年代以来,锂离子电池的研发与生产都取得了长足的发展,在各领域都有广泛应用。相 对于铅酸蓄电池、镉镍蓄电池,锂离子电池具有放电稳定、比能量高、自放电率小、比 密度高、无记忆效应等优点,是电动汽车动力能源的不二之选。
从目前现有的研究结果可以知道电池是电动汽车中出现问题最多最频繁的部件,是 阻碍电动汽车推广和产业化的关键因素,电池组中一个电池单体出现问题,电动汽车整 机都无法正常工作,并且电池组容量受限于电池单体容量,一个电池单体容量低,电动 汽车总容量低,汽车可行驶路程变短。通常目前对电池容量、安全性、稳定性的研究可 以从两个方面着手,一个是研究电池原理和工艺,设计新电池,不使用经典化学原电池 或者改进制造工艺,从内部结构上改善电池性能,另一个是从外部出发管理电池的充放 电模式,设计一种电池管理系统。

电池管理系统(BMS;Battery Management System)作为电动汽车动力电池组的管
理核心,是保证电动汽车安全行驶、电池组长久有效运行、减少设备损耗的关键,具有 不可替代的地位。
1.2 电池管理系统功能 本文中所设计的电池管理系统主要针对锂离子电池。 电池管理系统是对电池组具体管理的设备系统,不同的系统功能可能稍有差别,总
结起来可以归纳为以下几点:
1) 电池组基本信息的采集:包括各电池单体电压、电池组电流、电池单体温度以 及电池总电压。
2) 剩余电量估算(SOC;State Of Charge):根据所测电池组基本信息估算剩余电量。
3) 电池健康状况估算(SOH;State Of Health):根据所测电池组基本信息对比正常 数据估算电池组健康状况。
4) 均衡及热管理:单体电池均衡充电,保持单体电池温度一致,保证性能。
5) 用户交互及报警:根据所测数据及估算结果,显示信息。在数据不合理时给出 报警提示。如温度过高、电流过大、剩余电量偏低、电池健康状况差。用户可 设定报警阈值。
6) 数据通信:与汽车的系统主机通信。如 CAN 总线通信。 本文中电池管理系统所实现功能如图 1.1 所示:

0.png

1.3 国内外发展现状

随着近十几年的发展,国内外的汽车制造商和相关从业人员对电动汽车的大量研发 及实验,电动汽车发展势头愈加火热。电池管理系统同样也种类繁多,发展迅速。

通用汽车生产的电动汽车 EV1 可支持测量 26 个铅酸蓄电池,支持电池组基本信息的采集、支持过放电 阈值报警并降低行车性能、具有多重保护功能,尤其看重电池组的可靠性建设。由 Aerovironment 公司设计的 SmartGuard 电池管理系统提供分布式管理策略。支持历史数 据的存储功能。同时给出最差电池单体 SOC 结果。AC Propulsion 公司产品 BatOpt 系 统同样是一种分布式系统,支持电池组基本信息的采集,与此同时,支持双线的总线通 讯。另外具有代表性的还有德国对电动汽车研究,由 Mentzer Electronic GrmbH 及 Werner Retzlaff  共同设计的 BADICHEQ 及改进版本 BADICOaCH 于上世纪 90 年代完成,当时 已能实现对 20 个电池单体的基本信息测量、充电均衡控制、阈值报警等功能,后改进 版本对数据通信的功能更加改善。B Hauck 所设计的系统 BATTMAN 对不同规格电池的 统一支持功能十分强大,通过修改参数,修改跳线即可管理不同规格电池组[4]。
我国对电池管理系统的研究起步较晚,但经过十多年发展,也取得了一些突破。1999 年北京交通大学即开展了研究,2000 年北京航空航天大学也开展了研究。05 年国家 863 计划,北京理工大学承担了 EQ7200HEV 系统,湖南神州公司承担了 EQ6110HEV 系统。

1.4 本文研究内容

电池管理系统的设计,主要有一下几个方面的问题:
1) 检测电路的设计:由于多电池串联,具有高共模电压,差模电压范围也在 3v 至
4.2v 之间,使用一般 AD 采样电路测量电压显然是不合理的;对电流的测量若 使用采样电阻将电流量化为电压量,再采样计算,同样也存在超过 ADC 输入范 围的问题,因此需要设计信号调理电路。
2) 电池单体多,而主控芯片的 I/O 资源有限,如何设计提高 I/O 利用率。
3) 电池单体放电速率不同,以及电池特性的问题,造成 SOC 的计算具有不稳定性, 如何融合参数修正,设计实现合理的 SOC 估算算法。
4) 用户交互、总线通信、单片机运行的程序实现。完善融合系统中各个模块的程 序,完成系统软件设计。
本文内容的组织情况如下: 第一章绪论,简要的介绍电动汽车电池管理系统的研究意义,电池管理系统所具备
的功能,国内外的发展现状。

第二章锂离子电池电源管理系统基础知识,从原理上介绍了锂离子电池使用及应用
上存在问题的原因,有何因素影响 SOC 的估算,常见的一些估算方法。并给出了一些 信号调理电路的方案。
第三章给出电池管理系统的详细硬件电路设计。 第四章给出电池管理系统软件设计,利用模块化编程、分层编程的思想,完成对设
备驱动层、程序应用层直至模块功能实现的程序编写。将各模块程序融合完成最终程序。 第五章给出系统联调,焊接硬件的过程,测试功能完成情况。


第 2 章   电池管理系统相关原理

针对电动汽车电池组的特点,本章简要介绍电池管理系统中需要涉及的相关理论原 理,本文主要研究的是以锂离子电池作动力源的电动汽车,因此介绍了锂离子电池的相 关特性。针对电池组多电池串联的特点介绍了电池信息采集的相关方法。同时介绍了电 池管理系统中最重要的功能之一,荷电状态估算的相关原理。
2.1 锂离子电池原理

2.1.1 锂离子电池工作原理

我们常说的锂电池主要包含锂金属电池和锂离子电池。1970 年首个锂电池诞生,首 个可充电锂金属电池于 1996 年被发明,由于成本问题,应用并不广泛。锂离子电池于1990 年前后发明,1991 年左右商业化[5]。 锂离子电池是在锂电池基础上研发的,它的正极材料锂嵌入化合物,目前商业化的材料多为LiCoO ;负极材料是碳材,如锂化碳;电解质使用凝胶聚合物,活性物质使用含锰金属氧化物。锂离子原电池化学反应原理如图 2.1 所示。


充电时,锂离子从正极脱出并嵌入负极晶格,正极处于贫锂态。放电时锂离子从负极脱出并插入正极,正极为富锂态。充电时正极LiCoO 中的锂离子迁出,经过电解液,嵌入石墨的碳层间,在电池内形成锂碳层间化合物;放电时,过程刚好相反,即锂离子从石墨负极的层间迁出,经过电解液,进入正极LiCoO 中[6]。

2.1.2 锂离子电池充放电特性

电池性能主要有一下几个参数描述[7]  :


1) 电池内阻

包括欧姆内阻和极化内阻。欧姆内阻是电极材料及锂离子在电解质中的移动阻力造 成的;极化包括电化学极化和浓差极化。

2) 电池容量 包括理论容量、额定容量、实际容量。

3) 开路电压和工作电压 开路电压指电路中无电流时,且除去极化电压后,电池正负极之间的内电势差。工

作电压在充电时由于电池内阻的作用,会高于开路电压,而放电时则低于开路电压。通 常,通过直接测量电池正负极我们容易得到电池的工作电压,它是开路电压、欧姆内阻 压降和极化内阻电压的合成电压。

4) 充放电倍率 充放电倍率指在规定的时间内电池放出其额定容量时所需要的电流值,1C 在数值

上等于电池额定容量,通常以字母 C 表示。如电池的标称额定容量为 2Ah,则 2A 为 1C (1
倍率),1A 则为 0.5C[8]。

5) 自放电率 由于电池材料的杂质问题,电池产生的自发放电现象。

6) 充电效率和放电效率 充电效率是电池充电时电能转化为化学能程度的量度。影响因素一般是电池工艺和

环境温度。温度越高,充电效率越低。放电效率则是在一定放电条件下实际放出的电量

(至终止电压)与电池的额定容量之比,影响因素一般是放电倍率,环境温度,电池内 阻。放电倍率越高,放电效率越低。温度越低,放电效率越低。

7) 循环次数 循环充电一定周期后,电池容量下降到某一值时,充电的周期次数。 根据文献[9]所做研究:所选电池单体容量为1.25Ah,工作电压范围 3.0 至 4.2V。 充电:先以 550mA 恒流充电然后以 4.2v 恒压充电至电流小于 50mA。所测电池电

压随时间变化曲线如图 2.2  充电曲线图。放电:以 550mA 恒流放电至 3.0v。所测电池 电压随时间变化曲线如图 2.3  放电曲线图。







图 2.2              充电曲线图              图 2.3              放电曲线图

由放电曲线图电池工作电压范围内电池开路电压随时间变化可估算出 SOC 与开路 电压的对应关系。显然在剩余电量偏低时,开路电压不与剩余电量程线性关系。

文献[9]同样通过测算在不同荷电状态下(对应开路电压下)电池交流内阻的大小, 得出了电池荷电状态增大,则电池的交流内阻增大的结论。

由文献[10]所得结论知,25℃充电至满,不同温度放电,对电池容量的影响不大, 但温度越低,总的来说,可放出电量越少。

文献[11]指出了电池内阻与电池老化水平的关系。结果表明,电池循环次数越多, 极化内阻越大,而欧姆内阻基本保持不变。因此车用锂离子电池循环使用后性能变差的 原因主要是由于极化内阻的加大,此时电池的高倍率放电能力降低。因此基于安全性的 考虑,同时为保证电池循环次数,两端剩余电量区间,尤其是低剩余电量时,不宜采用 大电流充放电,需同时进行过压、欠压保护[12]。

2.2 荷电状态估算的相关原理

荷电状态(SOC;State Of Charge)是电池状态估计的一个核心参数,它能够很好 的反映剩余电量的多少。对 SOC 的定义,业界普遍认同的是指电池剩余电量与电池额 定电量的比值:

2.2.1 荷电状态(SOC)影响因素

对电动汽车电池组而言,影响电池荷电状态的因素主要有以下几点:
1) 充放电倍率 放电倍率越大,荷电状态越低,因为由于电池内阻的影响,一部分能量被内阻内耗
吸收掉,电池能够释放的能量也越低。
2) 电池温度 电池工作时的周围环境温度对荷电状态的影响十分重要。这是由于温度对锂离子电
池化学反应速率的影响造成的,当电池温度上升时,电池中活性物质的活性更高,放电 时,电池单体能够释放出比平时更多的电量。反之,当温度降低时,反应活性降低,导 致电离子的数量减少,电池单体能够释放的能量比标称容量少。但是,如果充电时温度 较高,则会致使化学反应过快,造成气体析出,极板结晶等一系列更严重的问题,所以 温度是影响荷电状态的重要因素之一。
3) 自放电率 电池在长期存放过程中,不可避免的存在自发放电的现象,尽管锂离子电池的自放
电率十分低,但仍然存在。通过长期测量可以校准,对锂离子电池而言,实际中也可忽 略。
4) 电池老化 随着电池循环次数的增多,电池单体不可避免会产生不同程度的老化,此时电池容
量降低,直至不可使用。这会影响 SOC 的估算结果,需要对电池额定容量进行修正。

2.2.2 荷电状态常用估计方法

目前,存在以下几种常见估算方法[13; 14]:
1) 开路电压法 荷电状态按定义是计量电量多少的参数,直觉上感觉应与电压无关,但实际上,由上节所述电池单体放电曲线图可知,开路电压(OCV;Open Circuit Voltage)与荷电状

态存在一定的一对一映射关系。通过测量电池 OCV-SOC 曲线,即可凭借开路电压估算荷电状态。但是由于 OCV-SOC 曲线随着电池温度变化、随电池老化情况变化、并且当 电池放电后,极化内阻不能忽略,存在极化电阻电压,需要长时间静置,才能消除影响, 测得准确的开路电压,存在一定的滞后性。因此这种方法具有不稳定性,需要按条件修 正,因此使用受限。
2) 电池内阻法
这一方法是由日本 CHUGOKU Electric Power Co.Inc.提出的,用于混合动力电动汽 车动力电池剩余电量 SOC 的估算。方法的具体流程是首先用不同频率的交流电激励电 池,与此同时测量电池交流电阻,最后通过计算模型得到 SOC  信息。但是,这种方法 并不常用,因为实现比较困难,用传统的数学方法很难建模。因此,很少在电池管理系 统中应用这种方法。
3) 安时积分法 此方法是剩余电量估算的原理性方法,安时积分法的直观表达就是,剩余电量等于
总电量减去已使用电量,在已知总电量的条件下,通过测量已使用电量,来推算剩余电 量。这里,我们利用了黑盒原理,不去关注电池内部的化学反应,也不去关注电池内部 的电气特性,把一个电池单体当做一个黑盒,只关注它的外特性,通过测量它累计向外 部输出了多少能量,计算剩余电量。同时需要根据温度,放电率对测算结果进行修正。 剩余容量与放电倍率也是密切相关的,只要电池以某较大电流放电,若已达 OCV 截止 电压,此时若以某小电流放电,电池仍能放出一部分能量。安时积分法通过计算充入的 电量和释放出的电量,迭代循环上一刻剩余电量与电量积分量,推算此刻剩余电量。算
法简单有效。是目前较为流行的方法。迭代公式如下:


4) 卡尔曼滤波法

这是对某一系统内的一系列状态量做出最小方差的最优估计算法。是一种精确测量 电池组剩余电量的方法。通常卡尔曼滤波法仅用于线性系统,对于非线性系统,常常使 用扩展卡尔曼滤波法。卡尔曼滤波法能够有效的滤除测量噪声,提高精度。这些算法的 基本思想是通过系统的建模方程算出状态量的估计值,再结合当前的测量值不断修正。






对于电池管理系统而言,电池可认为是一个非线性的动态系统,而荷电状态仅仅是其中

一个状态。通过建立相应的电池数学模型,列出状态方程和观测方程,利用迭代递推的 原理估算当前电池荷电状态。卡尔曼滤波法有两个弊端,一是过于依赖模型的准确度, 二是需要处理过多矩阵运算,计算复杂,对硬件资源有很高的要求[15]。

2.3 检测模块相关理论知识

2.3.1 电池组的电压采样原理

论述测量方法之前,需要简单的介绍一下电压测量的背景知识。本质上,电压是系 统中感兴趣的两点之间的电势差。但是,容易混淆的地方就在于参考点的选择。就目前 的电子设备而言,参考点默认是指系统中的公共地。“地”这个术语源于电力装置直接 与大地相连以保证电势为 0 的应用惯例。通常在一个系统中,只有一个公共地,是稳定 不变的。电池组大多是有几十个电池单体串联而成,总电压高,想要测量每个电池单体 的电压有以下方法:

1) 共模测量法 它的基本原理是电阻分压,选定最外端电池负极为公共地,然后设计一个分压电阻

网络,测量每一节电池单体正极相对于公共地的电压,接着逐个求得相邻正极的电压差, 得到每节电池电压。该方法原理简单也易实现。但由于需要设计电阻网络,对电阻的精 度要求高,容易带来随机误差。并且电池越多,电阻越多,误差越大。

2) 选通测量法 通过开关选通某一节电池单体,测量电池单体差分电压。由于串联电池单体多,离

地越高共模电压越高,此时容易造成芯片被高压击穿。由于总电压可能高达几十伏甚至 几百伏,直接将电压信号接入模拟开关或者采样芯片都是不明智的。一般通过继电器选 通,先用电池单体差分电压对某一飞跨电容进行充电,然后控制继电器断开电池,测量 芯片测量飞跨电容上的电压即是电池单体电压,以此解决共地问题、高共模电压问题。 这是一种差模测量方法。显然经过继电器的反应时间、电容的充电时间,测量时间变长, 且存在精度问题。

3) 独立地测量法 前述差模方法中,最关键的问题主要是共模电压过高的问题,那么将电池组的地与

电池管理系统的地隔离独立开来,直接测量单电池的差分电压,即可解决高共模电压问 题,同时为解决采样芯片的共地问题,需要信号调理电路[16]。






2.3.2 电流采样原理

1) 采样电阻法 使用采样电阻将电流量转换为电压量,再通过测量电压转化为数字量,最后计算对

应电流值。电阻采样技术,原理简单,采样精度高。但是这种方法的弊端在于,采样电 路会消耗一部分功耗,产生压降,拉低电源效率。若用于小功率系统,影响明显。且无 法电源隔离。若用于大功率系统,不保证耐压等安全问题。

2) 霍尔传感器法 利用电生磁原理和霍尔效应,将电流值转化为电压值。它的优点是很明显的,首先,

电流输入端与测量端有良好的电隔离,耐高压。其次,它的频响范围宽,响应速度快, 有利于采样速率提高[17]。但是,霍尔传感器多用于测量大电流,对小电流的测量精度达 不到要求。

2.4 本章小结

本章分为三节,从电动汽车的分析角度,简要介绍了一些相关理论知识。包括对电 动汽车动力电池的工作原理,锂离子电池的充放电特性做了简单论述,对锂离子电池的 性能问题做了简要介绍。对荷电状态估算的四种主要影响因素做了简要阐述,并介绍了 几种常见的估算方法,结合前文分析、各估算方法优缺点,本文主要结合开路电压法和 安时积分法对荷电状态进行估算。这样既保证测量的准确性,又降低了算法的复杂度。 最后就串联电池组的电压电流采样存在的问题,简要的介绍了几种方案。本文对电压采 样的方法主要是独立地测量法,对电流测量使用采样电阻法。



第 3 章              电池管理系统硬件设计

硬件的合理设计是软件设计的前提,只有得到了电池的原始相关信息,才能对数据 进行处理,实现电池管理的功能。本章从系统的结构设计,硬件的功能模块,介绍了电 池管理系统硬件电路的原理,硬件实物的搭建在最后一章中给出。

3.1 硬件整体总方案

电动汽车上存在电磁环境复杂、强电弱电要隔离、空间有限等问题,而电池管理系 统的硬件设计是功能实现的前提,总方案的确定,需要从以下方面考虑:

1) 数据采集的准确性;
2) 系统功能能否实现;
3) 系统的抗干扰能力,EMC 性能;
4) 系统结构的可扩展性;
5) 系统的安装难度;
6) 开发系统的平台、使用何种编程语言、开发环境是否友好;
7) 具体芯片的选型,元器件的选择;

就目前产品化 BMS 而言,硬件结构上可分为三类:集中型、分散型、集成型[18]。 集中型成本低、安装方便,但是数据采集不精确。分散型采集信息准确度高,但安装难 度大,灵活性差,不易修改设计。集成型的 EMC 性能好、数据精度高,但灵活性差、 可扩展性差。

本文结合现有方案,采用主控板+巡检板的双板设计,将巡检板安装与电池组内部 或附近的箱体之中,将主控板安装于车体用户附近。主控板与巡检板之间通过总线连接, 通信方便,缩减了线束复杂度。巡检板负责基本信息的采集,荷电状态结果的估算。由 于巡检板在电池组附近,避免了箱体之间直接连接功率线路的问题,同时缩短了传输线, 不易受汽车上复杂电磁环境的干扰,数据采集的准确性有保障,同时节省了空间。主控 板负责展示、存储信息,用于用户交互。硬件整体结构拓扑如图 3.1 所示。具体芯片及 元器件的选型如下文所述。

鉴于实际设计实验需要,设计过程中只针对两路电池单体进行开发。


3.2 MCU 及其外围电路的设计

3.2.1 主控芯片的选用及简介

本文所设计的锂离子电池管理系统,主要用于以锂离子电池作为动力源的纯电动汽 车上,需要完成电池组电池单体电压的测量、电池组电流的测量、电池单体温度的测量、 荷电状态的估算、用户交互、阈值报警、总线通讯等功能。需要有强大的处理速度和计 算功能,I/O 资源需要足够多,要有宽泛的工作温度范围,同时要有足够的程序储存空 间。同时结合成本要求的考虑,可从汽车电子常用单片机中选型。事实上,单片机家族 “浩如烟海”,各种各样的应用于各种场合,各种价位的单片机层出不穷。

由意法半导体(ST)公司生产的 ARM Cortex-M3 内核芯片 STM32F103 就是一种很 好的选择。作为 ARMv7 架构中第一款亮相的Cortex 系列,CM3 处理器集高性能、高代 码密度、小硅片面积等优点于一身,是汽车电子中的“翘楚”。CM3 处理器性能高,中 断等待时间短,能用于实时系统。CM3 处理器内嵌中断向量控制器,支持上百外部中 断,又高度集成,同时成本价格低廉[19]。STM32 有很多优异之处,如外设众多,SPI、 I2C、USART、ADC、DAC、TIMER、DMA、RTC 等常见外设都有集成;型号众多, F10x 系列有上十种型号可供选择,同时各种诸如 QFN、LQFP、BGA 封装可供选择; 功耗控制优异,能够实现低功耗;并且开发时不需要昂贵的仿真器,通过 Jlink 仿真或 串口即可烧写代码[20]。结合本文研究实际,最终选定 STM32F103 这款 ARM 单片机, 它在十元人民币之内就可购得。作为低成本电池管理系统的主控芯片再适合不过了。





STM32F103 最高工作频率 72MHz,具有单周期硬件乘法、除法性能,程序储存区

FLASH 从 32K 到 512K 字节不等,最大可支持 64KB 的 SRAM 运行内存。结合研究实 际,选定了 STM32F103RBT6 这款芯片(128K 字节 FLASH),芯片原理图如图 3.2 所示:


图 3.2              STM32F103RBT6 原理图 本设计中使用到了 STM32 单片机的如下集成外设:

1) GPIO

STM32F103RBT6 共有 GPIOA、GPIOB、GPIOC 三组 16 位通用 IO 口,外加 GPIOD_1, GPIOD_2 两位 IO 口,每位 IO 有八种输入输出模式(输入浮空、输入上拉、输入下拉、 模拟输入、开漏输出、推挽式输出、推挽式复用功能、开漏复用功能)。


2) ADC

芯片内部集成 12 位逐次渐进型模数转换器,每个 ADC 模块都有 18 个通道(16 个 外部信号,2 个内部信号),转换时间为1.17us(系统时钟 72MHz),ADC 输入时钟不 能超过 14MHz,各通道有四种转换模式(单次、连续、间断、扫描)。


3) bxCAN
bx 代表 Basic Extended,STM32F103 的 CAN 控制器支持 2.0A、2.0B 两种协议。

4) SPI




SPI 是高速、全双工、同步串行外设接口,双向串行总线仅需要四根物理连线(单
工工作仅需三根),本设计中用于与电阻触摸屏、SD 卡通信。

5) USART
通用同步异步收发器,即我们常说的串口,本设计中用于下载程序、调试。



同时使用到以下集成模块:
6) 备份寄存器 BKP;

备份寄存器位于备份区域,当主电源 VDD 掉电后,可通过 Vbat 电池供电,维持数 据,系统复位或电源复位也不会清除之中的数据。总共包含 42 个 16 位寄存器,可存储

84Byte 用户数据。

7) RTC 实时时钟 由独立连续计数器构成,也处于系统备份区域,断电后可电池供电,提供时钟日历

的功能。
8) TIM 通用定时器

通用定时器由可编程 16 位自动装载计数器构成,本系统中用于 SOC 算法(安时积 分法)计算积分时间,以及用户交互过程中,忽略报警倒数计时。


3.2.2 单片机最小系统

电源电路是保证系统稳定运行的前提,电动汽车的电池组电压范围变化宽,不利于 稳压,同时电压采样模块使用了独立地方法,因此,电池管理系统的电源独立提供。

STM32F103 工作电压为 2.0V 到 3.6V,芯片内部集成调压器提供 1.8V 数字电源, 当主电源 VDD 断电时,实时时钟 RTC 和备份寄存器 BKP 可通过 Vbat 供电。通常数字 系统选择 3.3V 的稳定工作电压。STM32 芯片的 ADC 模块测量电压范围上下限由 VSSA 和VDDA 决定,通常并入主电源 VDD 中。系统中还有信号调理电路需要使用 5V 的电 源,因此选择 5V 的独立稳压电源,同时利用 LDO芯片进行 DC-DC 稳压产生 3.3V 电 源如图 3.3 所示:





图 3.3              电源电路

AMS1117-3.3 支持 1A 输出电流,工作压差低至 1V,最大电流输出时压差不超过

1.3V,负载调整率最大 0.4%,稳定性满足要求。图 3.3 中 BUTTOM 为一自锁开关,电 容 C6、C8 用于滤除低频纹波,电容 C7、C9是高频旁路电容。

复位电路如图 3.4 所示:

图 3.4              复位电路

当单片机上 NRST 引脚出现一个低电平时,STM32 单片机触发外部上电复位事件。
R1 电阻为上拉电阻,用于给电容 C1 充电。

STM32 有三种时钟信号源(高速内部时钟 HSI、高速外部时钟 HSE、PLL 时钟) 且这些设备还有两种二级时钟(40K 低速内部时钟、32.768K 低速外部时钟),总共需要 外界两种晶体振荡器。如图 3.5 所示:









图 3.5              单片机晶振电路

STM32 可以通过串口下载代码,但目前大多数上位机 PC 机已不带串口接口,因此 使用 USB 转串口芯片转换,用于兼容 USB 接口。并且,电源也来自 USB 接口,只要 一根线即可实现供电、串口程序烧写、串口调试三种功能。

同时说明一下,STM32 单片机有三种启动模式,如表 3.1 所示: 表 3.1              启动模式表

BOOT 模式选择引脚

启动模式

说 明
BOOT1
BOOT0
X
0
主闪存存储器
主闪存存储器被选作启动区
0
1
系统存储器
系统存储器被选作启动区
1
1
内嵌 SRAM
内嵌 SRAM 被选作启动区

当下载程序时应当选择系统存储器模式,因此为实现一键下载功能,设计如下下载 电路如图 3.6 所示:

STM32 串口 ISP 代码烧写的流程是:首先, BOOT0 置高(BOOT1 置低)进入系 统存储器,接着,单片机复位进入 ISP 模式,最后,串口下载代码。所以为实现一键下 载,首先要控制 PL2303_RTS_N 引脚为低电平使 BOOT0 置高,然后控制 PL2303_DTR_N 引脚为高电平使复位引脚 NRST 置低,保持一段时间,再使 PL2303_DTR_N 引脚为低 电平结束复位,STM32 芯片加载 ISP 代码,进入代码更新模式,此时就可以通过串口下 载程序代码了。

该功能需要配合专用的 ISP 串口下载软件使用,如 MCUISP。





图 3.6              串口一键下载电路




3.2.3 其他电路

SD 卡存储电路,如图 3.7 所示:
SD 卡支持两种访问模式:SD 模式和 SPI 模式,这里使用 SPI 模式,借助于 STM32
单片机的系统 SPI 通信接口,开发方便。

TFT 显示模块位于主控板上,是用户交互的主要途径,显示屏用以展示基本数据信 息和剩余电量信息、报警信息、报警阈值设定界面等,配合触摸屏可进行阈值设定,解 除报警等操作。





图 3.7              SD 卡电路

本设计中所使用的 LCD 显示屏是一款具有 26 万色,分辨率为 240X320 像素的彩色 液晶显示屏,物理尺寸为 2.8 英寸,显示屏的驱动 IC 为 ILI9341,支持串行模式连接和 并行模式连接,本设计使用并行模式共 23 根引脚(VDD、GND、16 位并行数据口、4 位控制口、1 位背光控制)。触摸屏是四线电阻触摸屏,控制 IC 是 XPT2046。触摸屏模 块使用 SPI 接口通信,共 6 根引脚(VDD、GND、4位 SPI 通信总线、1 位中断触发)。 如图 3.8  所示:


图 3.8              显示模块




C21、C22 是电源滤波电容,C20、R20、R21 对触摸屏 PEN 信号线进行滤波,使读
数更精确。
蜂鸣器报警电路,如图 3.9 所示:

图 3.9              蜂鸣器驱动电路 本设计使用有源蜂鸣器报警,同时显示屏上给出提示信息。R24 是限流电阻。

另外,主控板与巡检板 MCU 芯片引脚配置,如图 3.11、图 3.10 所示:

图 3.10              主控板主控芯片引脚配置              图 3.11              巡检板主控芯片引脚配置




3.3 检测电路的设计

3.3.1 采样信号调理电路

结合上文分析,本设计结合差模测量法,并应用独立地法,克服高共模电压的问题, 设锂离子电池的工作电压范围为 3.0V 至4.2V,而 STM32 单片机 AD 采样的模拟输入范 围为 VSSA 至 VDDA 即 0V 至 3.3V。设计信号调理电路如图 3.12 所示。

图 3.12              电压采样信号调理电路

本设计使用轨到轨 LMV324  运算放大器构成典型全差动运放电路也称为仪器仪表 放大器,由 U29B 及 U29C 构成差分运放前级电路、由 U29A 构成中间级反相放大电路、 最后由 U29D 构成电压跟随。U29B 为差动输入(输入信号+),U29C 为差动输出(输入 信号-),前级电路的放大倍数为 A1。U29A 是基本型差分比例电路,其放大倍数为 A2。 电压跟随器的放大倍数为 1,用于隔离缓冲,其输入电阻趋于无穷大,输出电阻趋于 0  。 具体电路分析如下:

前级电路是同相比例输入,输入电阻较高,且电路是对称结构,在电阻对称时,Ui+
加入电池单体的差模正极信号,Ui-加入电池单体差模负信号,R29=R31,R30 的中间点 为交流地电位 U29B、U29C 的反向输入端对“地”电位等于 R30/2 ,此时:
其中,R30 是可调电位器,用于放大倍数可调。C25 是滤波电容,用于滤除高频杂波。
VoltAD_TP  用于调试测试点。按上文所述电压范围和电路实际设置元件参数如图 3.12 中所示,可调放大倍数 A 的理论范围为:最小放大 0.47 倍(缩小),最大放大倍数为电 源电压输出比最小信号输入即 5V/3.0V 约 1.6 倍。
电流是安时积分法荷电状态估算中的一个重要参数,因此要准确计算剩余电量,电 流采样的精度必须要高,本设计采用采样电阻的方案,利用专业仪表放大器将采样电阻 电压放大至合适范围供 STM32 单片机 AD 采样。
由于电压采样方案中使用了独立地法,因此电池组与电池管理系统并不共地。电流 采样的采样电阻并不存在高端采样、低端采样的区别。但本设计中连线接法统一为 To_Load-端连接负载负极,To_Bat-端连接电池负极。
本电池管理系统并不对充电进行能量管理,但安时积分法需对冲入电量计算。充电 时,电流反向,采样电阻上的电压是负值,因此信号调理电路应将电压值抬高,以测量 正负不同区间的电流量。具体电路如图 3.13 所示。
本设计采用德州仪器生产的一款高精度仪表放大器——INA333。其增益倍数公式
为:



图 3.13              电流采样信号调理电路

INA333 是轨到轨放大器,输出电压宽,电源抑制比好,增益倍数小于 100 时,增 益误差最大值小于 0.25%,温漂小典型值为 ?15ppm?C。同时压摆率在增益 100 时能达 到 0.05V/s。本设计采样周期小于 200ms,所选芯片满足要求。REF3320 是一款电压基 准芯片,输出电压 2.048V 输出噪声为 55uVpp,稳定度高。

通过在采样电阻电压信号上叠加已电压基准使得正负不同区间电压平移至合适区 间。电路形式如图 3.13 所示,基准电压通过加至INA333 的电压偏置引脚,同时差分采 样信号加上基准偏压,此时采样电阻电压零点被挪至 2.048V。增益调节电阻即为图中R39。U33 是由 OP07 运放构成的电压跟随器。

3.3.2 选通隔离电路 出于安全性考虑,电池管理系统与电池单体之间增加了光耦隔离。 为了应对动力电池组电池单体多的问题,使用循环选通的方法节约巡检板主控芯片

的 I/O 资源,同一时刻只测量一路电池单体电压信号,通过控制各路光耦开关,选择不 同电池单体。电路原理如图 3.14 所示。






图 3.14              循环选通电压测量电路

模拟开关本设计选用德州仪器公司的单片八路数据选择器 CD4051。光耦选用日本 松下公司生产的 AQW214S。上图中,CD4051芯片 EN 端为使能端,低电平有效,不使 能时 X0-X7 输出高阻态,使能后,由地址线 A、B、C 指定输出端口,Xi = X 的数据状 态,如 CBA = 011,则 X3 = X。CD4051 的 I/O 端口不足以驱动光耦,因此增加了驱动 三极管 Q21、Q22,光耦的内部结构如图 3.15 所示


图 3.15              光耦内部结构 发光管阳极已上拉电源,若驱动三极管导通,发光管接地导通,对应光耦导通;若

驱动三极管截止,则光耦也截止。因此只要模拟开关不使能或未选通该路光耦,则该光

耦截止。因此,只要按时序循环选择导通各路光耦,就能实现循环检测各路电池单体电 压的功能。AQW214 光耦的输出侧导通电阻典型值为 30 欧姆,对测量精度影响不大, 满足要求。


3.3.3 温度测量电路

温度测量使用美国 Dallas 公司设计的单总线温度测量芯片 DS18B20,单总线技术缩 减了系统布线复杂度,提高了系统抗干扰能力。





单总线系统是由一个总线主机多个从机(含一个)构成的。主机通常由单片机担任,

按照总线协议规定的时序和波形,对挂载到总线上的各从机识别,数据交换。单总线定 义了一条信号线兼具地址线、控制线、数据信号线的功能,通过严格的时序保证信号的 正确传输。同时不同从机(芯片)都定义了唯一的 ID 序列号,通过寻址识别序列号, 分辨不同从机,使各从机串行分时进行数据传输,互不干扰。

整个总线网络只需一条物理连接线,上拉电阻即可完成网络连接。如图 3.16 所示。

图 3.16              温度测量电路

每个 DS18B20 在出厂时,内部 ROM 中都存储了各自的 64 位 ID 序列号,方便识别。 它的温度测量范围为-55℃至+125℃,测量精度为 0.5℃,提供 9 位数字温度读数。

3.4 CAN 总线通信模块

3.4.1 概述

控制器局域网(CAN;Control Area Network)是由德国 Bosch 公司开发的一种多主 机局部网络,是 ISO 国际标准化的串行通信协议,是目前国际上应用的最广泛的现场总 线之一,尤其在汽车行业应用广泛。CAN 总线可靠性高、特别适合工业设备单元互联, 通信介质可以是双绞线、光纤、或者同轴电缆。CAN 总线有以下特点

1) 以多主机方式工作,各连接单元不分主从,只要总线空闲,各单元都可控制总线。

2) 理论上,网络中可接入节点是无限制的。当然受实际物理电气特性影响,有节点接 入数目限制,目前最多达 110 个[21]。

3) 可点对点、点对多、全网广播发送数据。
4) 有优先级控制。




5) 非破坏性总线仲裁技术。以 CSMA/CD 方式接入网络,各节点以固定帧格式传送消

息,当多节点同时传送数据时,逐位仲裁比较,优先级高的传送,优先级低的立刻 终止传送。

6) 支持单元检错,并发送错误帧,支持屏蔽持续错误单元。 这些特点使得 CAN 总线成为汽车行业的标准通信模块。

3.4.2 通信介质位传输波形

CAN 总线使用一对差分传输线传送物理信号,分别用 CAN_H 和 CAN_L 表示,在 传输线上用“显性”(Dominant)、“隐性”指示数字系统中的“0”、“1”逻辑值,当传 输逻辑“0”时,差分线上传输“显性”信号,此时 CAN_H 程高电平、CAN_L 程低电 平,存在差分电压;当传输逻辑“1”时,差分线上传输“隐性”信号,此时 CAN_H、 CAN_L 的电平相同,差分电压为零。如图 3.17 所示。

隐性信号电平规定为 2.5V,当总线“空闲”时或传送“1”时出现。显性信号高电 平规定为 3.5V,低电平规定为 1.5V,当总线传送“0”时出现。

若总线上不同单元同时发送“显性”位和“隐性”位,结果是总线上总是程“显性”
位,也就是“0”的优先级比“1”的高,这是处理总线冲突的基础。

3.5 本章小结

图 3.21              CAN 收发器电路

本章重点探讨设计了基于 STM32F103RBT6 主控芯片的电池管理系统的硬件电路
原理,本文档所设计 BMS 系统由主控板和巡检板组成的双板系统构成,其中主控板包 含由 STM32 主控芯片、电源及复位电路、晶振电路构成的最小系统,以及下载电路, 显示模块,报警电路。巡检板包含最小系统,下载电路,SD 卡电路,和各检测电路。 主控板和巡检板之间通过 CAN 总线通信,所以又为两板添加了 CAN 收发器电路。各节 具体说明了电路原理,同时对 CAN 总线相关硬件原理做了简要概述,包括理论模型, 硬件结构,对 CAN 通信过程的分析将在下一章中给出。
第 4 章              电池管理系统软件设计

上一章已经介绍了电池管理系统的硬件组成,本章将探讨电池管理系统软件的设计 情况。首先需要介绍一下软件开发环境。
STM32 单片机主流的开发语言是 C 语言,C 语言开发的程序可读性好、容易移植, 同时由 ST 公司官方提供的固件开发库也是由 C 语言编写,自然而然,选择 C 语言作为 软件开发语言。RVMDK 是源自德国 Keil 公司集成 Keil  uVision 开发环境与 Real  View 编译器,应用于 ARM7,ARM9,和 Cortex-M3 内核处理器的集成开发环境,Keil 被广 泛应用于嵌入式开发,RVMDK 集代码编写、编译、下载、仿真、在线调试等功能与一 身,开发环境友好,是进行 STM32 开发的必备软件。
4.1 软件功能架构

软件设计应采用分层、模块化的思想,有利于将来调试、移植、升级。参考汽车开 发系统架构的相关要求[22]。软件开发的架构可按如下结构安排,巡检板软件架构如图
4.1 所示。主控板软件架构如图 4.2 所示。

图 4.4              主控板主程序流程(功能应用层)

C 语言是一种面向过程的编程语言,根据设计软件流程按顺序编写各模块程序,即 可实现功能,但在程序的循环过程中,还有某些功能不能等待,需要优先处理,比如接 收巡检板的发送数据,此时就需要用的单片机的中断功能。主控板软件中一共用到了三 级中断,现简单介绍如下。
CAN 通信是通过后台的中断实现的,为保证信息的实时有效性,它的中断优先级 应是最高的,接收到信息后,通过分类、格式转换,最终保存到系统的全局变量中。系 统主循环通过读取全局变量中的电池信息,就能获取最新的电池信息。同时若判断故障 后,行车建议会给出故障信息,但此时看不到具体的电池信息,因此,本设计提供“暂 时忽略”功能,用户点击“Ignore”按钮后,将有 5 秒钟时间查看电池信息,通过定时 器中断实现。其中断优先级应排在第二级。触屏检测是接收用户操作的途径,因此也应 使用中断功能实现,但其优先级可排在第三极。
用户交互一是彩屏展示信息,包括报警信息,二是用户通过触摸屏选择展示页面, 设定阈值。按上文分层模块化编程的思想,硬件驱动层彩屏程序初始化过程包含如下内容:功耗控制、驱动时序控制、电源序列控制、泵比控制、VCOM 控制、存储器访问控
制、帧速率控制、显示控制、伽马设置、退出睡眠开显示。触摸屏初始化主要是 IO 口 的配置,中断的配置。彩屏是并行数据通信而触摸屏是 SPI 串行数据通信,彩屏读写字 节数据主要是时序的配置,而触摸屏读写数据除了处理时序还要通过循环实现串并转 换。数据处理层上,彩屏主要是封装一些基础操作的函数,比如显示字符串,画一个矩 形、圆,清屏等函数,触摸屏主要是处理采样来的坐标信息,包括软件滤波、显示屏的 校准等。最后功能应用层上,彩屏程序通过大量调用基础操作函数,建立各种完整的显 示页面,而触摸屏通过设定合理的坐标区域,对不同区域做不同响应,模拟按钮的功能。
4.5 巡检板程序设计

巡检板的功能是测量各种电池信息,计算 SOC,并将这些信息通过 CAN 总线发送 给主控板。巡检板的软件流程如图 4.5 所示
接下来按软件流程逐一介绍各子模块程序:
电池基本信 息的采集 从软件上说 可分为两 类操作, 操 作单总线 温度传感器 DS18B20,操作 ADC 转换器。读取温度数据的步骤如下:设备复位、等待确认、读器 件 ID、读取串行温度数据、数据格式转换。电流信号经信号调理电路后变为电压信号供 ADC 采样,本设计中共测量两路电压和一路电流信号,对各路信号分类选通后,AD
采样即得所测数据,对数据进行还原处理即得原始电压、电流大小。 为提高采样准确性,可对采样数据进行软件平滑滤波,方法是采样十次,去掉一个
最大值,去掉一个最小值,然后取八个数据的平均值。
得到基本信息后,即可对 SOC 进行估算,然后通过 CAN 总线发送所有数据,完成 一次循环。

4.6 本章小结

对硬件设计结束后,本章论述了软件的设计过程,完成了对主控板和巡检板的软件 编写。主控板实现了用户交互、CAN 数据接收、报警提示等功能,巡检板实现了基础 信息检测、SOC 估算、CAN 数据发送等功能。程序编写过程中,有以下要点:第一是 对一个系统的软件开发时,首先要做的就是对功能需求进行分析,将整体功能细分,模 块化后逐个击破。第二是要学会分层编程,将底层的硬件驱动进行封装,向上提供操作 API,有利于系统的鲁棒性,同时便于调试和移植。例如本系统软件工程项目目录中, 按模块分,建立不同项目文件;按层分,编写了各种函数。


第 5 章              系统联调与试验

硬件原理设计完毕后,即可绘制对应元器件硬件封装图,绘出 PCB 设计图,完成 电路板的设计。最后即可焊接元器件,制作出实物,验证产品功能了。

5.1 PCB 电磁兼容设计(EMC)

本设计中存在小信号放大电路,数字电路等各种不同电路,贴装元件体积都十分灵 巧,便于集成,不同电路、不同元器件集中在一起,若不合理安排空间,设计线路,必 然会相互干扰,对电路功能产生影响。所以需要考虑电磁兼容问题,电磁兼容是指在同 一电磁环境下工作的各种系统、设备能够正常工作,互不干扰。合理的设计,既能保证 电磁兼容,又能使调试更加方便。

电磁兼容的设计可以从以下几个方面考虑:

1) PCB 板的尺寸,层数; 本系统需要手工焊接,因此元器件大小要适中,电阻电容的规格统一选择 0805 大

小的封装。电路板尺寸应根据元器件的尺寸、原理图合理设计。尺寸太大,空间利用率 低,导线变长,阻抗变大,对电路的影响越大,抗干噪能力越低。尺寸太小,空间太过 密集,若存在功率器件,散热必然产生问题,同时不利于布线,容易产生线间干扰。印制电路板层数一般可分为单层板、双层板、多层板(偶数),单层板多用于低密度电路 板,双层板多用于中密度、模数混合电路、而多层板多用于高密度、高频信号、模数混 合电路[23]。本设计使用双层板。巡检板尺寸为 82mm  x 99mm,主控板尺寸为 66mm  x

100mm。

2) 元器件布局 按电路原理分模块、分区布局,分模块指以功能单元的核心元器件为中心,就近布

局,缩短不必要导线距离,元器件间距合理,整齐紧凑。分区是指按电路的属性,将模 拟电路、数字电路等不同信号类型的电路放置于不同空间区域上,同时也要注意不同电 压范围的元器件空间布局上的距离,电位差大的电路,间距要适当增加。空间上,元器 件排列要整齐,保持平行排布,这样有利于信号流通,信号完整性更好,同时也有利于 焊接。接插件最好统一放置在电路板一侧,防止连线后产生环路辐射。避免信号环路与 电源环路重叠。板边缘的元器件过重要考虑板子的机械强度,一般离边缘不小于两毫米。

3) 布线设计



合理的电源布线、信号布线、地线布线是提高电磁兼容的有效措施。我们一般都将

电源线与信号线着重分隔开来,避免功率线路对信号线的干扰。布线过程中,要避免长 距离的平行线,极易耦合,产生串扰。无法避免长距离,两两信号线之间,可增加一根 平行的接地线,能有效减少干扰。对双层板而言,上下两层的信号走线一般是垂直的, 这样能最大程度减少线间耦合。另外,对线宽、线间距、拐角形状的设定也很重要。线 宽主要由电流大小决定,铜箔厚度确定后,按最大电流决定最小线宽,本设计中最小线 宽为 8mil。线间距由电压和绝缘电阻决定。布线过程中避免直角,极易辐射,影响其他 电路。一般选择 45 度拐角。电源的线宽建议大一些,间距也大一些。另一个重要的部 分就是地线的布线了,模拟地、数字地、机壳地要隔离,最后单点连接,如通过磁珠或 零欧电阻连接。通过大面积铺铜缩短回路,提供统一电势参考平面。集成芯片的电源与 地之间要并联陶瓷电容去耦合。高频去耦电容建议使用钽电容,电解电容有等效电感。

5.2 整机调试

实物制作过程中也存在很多细节具体的问题。

比如,PCB 原理图与封装管脚不对应,导致 PCB 板错误,需要重新打样。PCB 打 样周期长,不利于调试。所设计 PCB 板工艺要求高,无法印刷制作。板面铺铜后散热 快,不易手工焊接。微型封装的芯片手工焊接若使用焊锡膏则容易虚焊、漏焊,若使用 焊锡丝则容易粘连、短路。焊接完毕后首先要先测量电源供电是否正常,其中主控板第 一次焊接后一上电 AMS1117 芯片就发烫,用万用表测量发现电源与地之间电阻过低(没 完全短路),最后发现是芯片引脚之间有灰尘(混有焊锡)造成短路。芯片晶振不起振, 需要调节参数等等问题。焊接完成的主控板如图 5.1 所示,巡检板如图 5.2 所示:

图 5.1              主控板实物图





图 5.2              巡检板实物图 主控板连接彩屏后,运行界面如图:开机后进入欢迎界面,如图 5.3 中所示。在欢

迎界面屏幕中任意位置连续点按 6 次即可执行屏幕校准程序,如图 5.4 所示。校准完毕

后返回欢迎界面,此时点按“BMS”进入系统,展示相关信息,如图 5.5 所示。所展示 信息包括所测电池单体温度、电池单体电压、电池组电流、及电池组剩余电量。



图 5.3              欢迎界面              图 5.4              屏幕校准界面






图 5.5              信息展示界面              图 5.6              阈值设定界面

通过点击“SET”按钮可进入报警阈值设定界面如图 5.6 所示,可设定温度上限、 电流上限、及剩余电量下限。

符合报警条件时,蜂鸣器鸣叫报警,同时显示提示信息。当温度超过范围时,提示 信息如图 5.7 所示,当电流过大时提示信息如图 5.8 所示,当剩余电量过低时,提示信 息如图 5.9 所示。

图 5.7              温度过高提示              图 5.8              电流过大提示              图 5.9              电量过低提示





同时在提示界面可以点按“Ignore”按钮,将暂时返回信息展示界面,查看实时超

标信息。在此期间若数据一直超过设定指标,该项数据将以红色字体特别标注,5 秒后 重复显示提示信息。

5.3 本章小结

本章主要介绍了印制电路板的绘制过程中,PCB 抗干扰的相关原理。及实物制作中 出现的问题。并演示了系统的操作流程。

通过实验验证,文档所设计的锂离子电池管理系统基本实现了预期功能,可测量电 池组电流,电池单体电压、温度,可计算荷电状态估算值,可实现 CAN 总线通信,可 检测故障并报警,用户可设定故障报警阈值。同时也存在一些问题,比如尚未实现汉化, 界面语言不友好。功能上仍有很大提升空间。







结              论


作为一种新能源汽车,电动汽车越来越受到世界各国的关注,对电动汽车的研究也 越来越多、越来越深,研究过程中可以看到,电池是电动汽车中最容易出现问题的部件, 电池的寿命往往是限制电动汽车产业化的瓶颈。有两类途径改善电池的容量和寿命:改 进电池制造技术、改善电池管理系统。本文对电池管理系统做了如下研究:

通过大量查阅文献资料,总结了国内外有关研究的进展情况。分析电池的工作原理, 充放电特性,研究了电池特性对荷电状态估算的影响因素。介绍了现有研究对荷电状态 常见的几种估算方法,本文提出了一种结合开路电压法和安时积分法并带参数修正的估 算算法。以开路电压作主要依据,以安时积分作细节估算。通过长时间静置消除极化电 压对开路电压测量的影响,通过软件滤波提高电流测量的准确度。最后利用 C 语言实现。

本文还设计了电池管理系统的硬件电路。系统由主控板和巡检板组成的双板电路构 成。电池基本参数的测量是荷电状态估算的前提,文档通过分析电动汽车动力电池组多 电池串联的相关问题,介绍了常见的几种检测方法,并设计了独立“地”循环选通电压 测量电路以及采样电阻电流测量电路。本设计使用单总线集成温度传感器测量温度。同 时还设计了主控电路、CAN 总线电路。

根据所设计硬件电路,编写了 ARM 芯片的软件程序。本设计结合模块化、分层编 程思想,对各外设分类,分别从硬件驱动层、数据处理层和功能应用层,层层往上按模 块封装程序函数。主控板主要实现用户交互和 CAN 通信功能,巡检板主要实现基本数 据的检测和 CAN 通信功能。

结合硬件设计绘制了 PCB 板,完成电路板制作,并生成了目标代码,烧写至板上。 研究过程中,深感电池管理系统的复杂度和所涉及领域的广泛性。要对电池原理、工艺 要深度了解,要对电池做大量的测试,比如温度对充放电特性的影响。本文时间精力有 限,缺乏实验器材,无法得到必要的实验数据,程序中多参考经验值或其他文献数据, 实现效果有待提高。同时功能也需要完善,需要大量时间和资源进行研究。比如对 SOC 算法的研究,还能结合神经网络分析方法,或者通过实验数据建立电池模型,结合卡尔 曼滤波分析估算。同时 BMS 的功能也有很大扩充空间。



完整的pdf格式文档51黑下载地址(含图片与公式):
电动汽车电池管理系统(BMS)的开发与设计.pdf (1.92 MB, 下载次数: 274)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:668145 发表于 2019-12-19 11:07 | 显示全部楼层
学习了,谢谢!
回复

使用道具 举报

ID:323716 发表于 2020-2-8 22:51 | 显示全部楼层
好东西啊 下来看看
回复

使用道具 举报

ID:656801 发表于 2020-10-16 15:34 | 显示全部楼层
好东西 值得参考
回复

使用道具 举报

ID:902676 发表于 2021-4-9 09:15 | 显示全部楼层
请问相应的AD图和代码有吗
回复

使用道具 举报

ID:588322 发表于 2021-5-4 21:14 | 显示全部楼层
不错,研究下
回复

使用道具 举报

ID:818895 发表于 2021-5-5 12:31 | 显示全部楼层
这么好一个工程系统,学习。
回复

使用道具 举报

ID:803775 发表于 2023-2-3 10:50 | 显示全部楼层
不错,研究下
回复

使用道具 举报

ID:65369 发表于 2023-2-24 11:08 | 显示全部楼层
这个有配套的硬件吗?    学习起来太好咯啊
回复

使用道具 举报

ID:1064118 发表于 2023-2-24 16:21 | 显示全部楼层
不错的资料,下层应该还有电路板BMU,对电池均衡等情况做出判断和处理
回复

使用道具 举报

ID:344646 发表于 2023-2-24 17:07 | 显示全部楼层
资料质量不错的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表