1. 引言
当下电动车逐步进入智能化发展趋势,电动车智能化锂电池的使用趋势已经到来,面对新的电池技术和电机控制技术的发展,传统电动车技术满足不了客户对新技术的渴望。锂电池具有体积比、重量比能量高、单体电压高,但存在电池容量不大、大电流放电性能弱、成本高、无法循环利用等问题。特别是在电动车上,锂电池保护与控制系统不太成熟,替换原使用铅酸电池车辆,与其仪表不一致等多种问题,使得锂电池在电动自行车上的应用受到一定的阻力。因此完善锂电池在电动车上的保护与控制系统尤为重要。现阶段大多数电动车锂电池采用纯硬件保护方案,直接使用锂电池保护IC进行保护,该方案中电路成本较低,但是纯硬件保护方案中整个电池只有输出与关闭2个状态。当电池被关闭时,不能直接定位到具体是某一单体锂电池故障造成电池关闭,因此对锂电池单体要求较高,使得锂电池成本较高。电动车在行驶过程中,功率、电压、电流、温度等状态的变化能够反应出电动车故障的大致情况,比如电流异常,电机出现故障,因此实施电动车充电器锂电池电量检测系统设计就较为重要。
在电化学体系中,将含有金属锂、锂合金和锂离子、锂聚合物的一类电池称作锂电池 [1] 。锂电池包含可充电和不可充电的,其中不可充电的是锂金属电池,不可以作为二次电池投入使用;可以充电的是锂离子电池,因其不含金属态的锂。本节介绍的是二次电池——锂离子电池。锂离子电池是从1990年后才逐渐发展起来的新一代二次电池,90年代初,由日本索尼公司发明的锂离子电池迅速占领市场,该电池以炭材料为负极,以含锂的化合物作正极,只有锂离子存在于电池的充放电过程。当对电池进行充电时,锂离子于电池的正极上产生,并随着电解液运动到电池负极,然后嵌入到层状结构并有很多微孔的负极材料中,随着嵌入的锂离子逐渐增多,充电容量增大。相同的,我们使用电池的时候(即放电过程),锂离子从负极碳层中的脱出运动回正极,锂离子返回正极的越多,放电容量随之越高。放电容量就是电池容量,锂离子从正极→负极→正极的运动状态就称为锂电池的充放电过程。另外,锂电池就像一把两端为电池两极的摇椅,而锂离子在摇椅来回奔跑。因此,锂电池又被称为摇椅式电池 [2] 。
2. 设计方案
本次电池性能检测系统的设计整体以STM32单片机作为处理器,由电压电流采集低通滤波、电流采集模块、OLED模块、蜂鸣器模块四大部分组成。通过单片机处理电流电压及在OLED上显示电量百分比、充电耗时和充电电压等。电池性能检测系统的设计采用了电压电流采集低通滤波电路、电流采集电路和OLED显示电路等设计。低通滤波电路用于将锂电池的电压电流转化为单片机能够识别的数字信号,再将其传递给单片机。OLED显示电路则用于显示电池电量百分比、充电耗时和电压等信息系统首先通过单片机进行电流采集模块程序编写,再把写入的数据读出来,然后通过电流采集模块控制电压电流采集低通滤波。然后OLED显示屏上显示写入的数据,例如电池百分比、充电耗时和电压情况 [3] 。
2.1. 方案原因
论文选取锂电池电量检测系统作为研究重点在于随着人们对环境保护意识的提高,能源危机也日益严重,汽车尾气对人类和地球带来的伤害日益加剧,人们希望采用“绿色”电池作为出行交通工具的动力,改善环境污染。目前,动力锂电池已完全在电动自行车上使用,而且发展情况良好,因此,锂电池在电动汽车上面应用研究也提上日程,虽然技术还尚未成熟,但市面上已经出现了纯电动的汽车和双能源汽车。另外,国防、航空航天领域也对锂电池的应用非常看好,可作为军事装备中的电源。在航天事业中,锂电池可与太阳能电池联合组成供电电源,这个电源不管是从外形还是性能方面,都要优于镍镉电池或者锌银电池组成的联合供电电源,而且它的小型化对航天器件的应用非常重要的。国内外一些小卫星项目上已经开始应用锂电池组作为蓄电池 [4] 。
2.2. 方案思路
电池电量检测系统框架如图1所示,整体以STM32作为处理器,供电模块、电流电压采集模块、OLED模块、蜂鸣器模块、转伏模块。

Figure 1. Framework diagram of battery detection system
图1. 电池检测系统框架图
论文方案设计实现了电量显示百分比、充电耗时的检测、显示屏显示充电电压、电流及充电功率等,并且电池充满则启动报警提示,相关电量和电压显示到液晶屏上观察。
2.3. 锂电池的充放电
在锂电池中,总是存在的单体之间的一些差异。在电流流过相同大小的串联锂电池组,小容量的锂蓄电池过充电更容易,或深度放电,因此容量衰减快,寿命不长,小容量的电池会提前发生故障并失效,则电池的寿命会缩短。因此,分析和研究锂离子电池充电和放电具有重要意义,也很有必要。锂电池使用不同的电流充电和放电,显示特性会发生变化,所以研究其充放电特性,使用正确的充电和延长电池寿命的充放电控制和保护具有重要意义。
2.3.1. 锂电池充电特性
理想的锂充电过程,通常使用的是恒流转恒压充电模式。恒流充电阶段为充电的开始阶段,当电池电压低时,充电电流基本上不发生改变,为安全起见,开始时,充电速率一般控制在0.25 C到1 C之间,随着时间的变化,锂电池电压逐渐增加,当单节电池电压上升到4.1 V,充电器应马上转变到恒定电压充电模式。这个恒流转恒压充电法可以很好地达到饱和的电池,不会损坏电池,是可再充电锂电池的主要充电方式。图2所示为电量和电压的时间曲线变化图。

Figure 2. Lithium battery charging characteristic curve
图2. 锂电池充电特性曲线
但是,如果深度放电和其它因素存在,使电池电压较低时,锂离子电池的内部活性削弱,如果以相对大的电流在开始阶段充电,会对电池造成损坏。要逐步激活锂离子的活性,先用小电流充电,直到锂离子电池的电压为2.5 V以上,则利用恒定电流–恒定电压(CC-CV)充电方法,可有效地保护电池。锂电池充电阶段电压曲线与电流曲线变化趋势如图3所示。

Figure 3. Lithium battery charging stage
图3. 锂电池充电阶段
2.3.2. 锂电池放电特性
在正常情况下,初始锂离子电池的满电电压是4.1 V或4.2 V,放电终止时,电压降低为约2.5 V,另外还有规定在放电终止时单电池电压不低于2.1 V以下,放电电流也应不过大,一般不超过2 C,否则放电深度过度会缩短其寿命,过大电流还可能会使电池燃烧。锂电池额定容量不同的释放程度是因为其放电速率不同。如:放电速率0.25 C可被放出所有的额定容量,放电速率1 C,只可释放95%的额定容量。小电流放电,有利于提高电池的循环寿命。锂电池放电速率与容量关系曲线变化趋势如图4所示。

Figure 4. Relationship curve between discharge rate and capacity of lithium batteries
图4. 锂电池放电速率与容量关系曲线
3. 系统硬件
本设计采用模块化设计,以STM32F103C8T6单片机为核心,将其他模块整合在一起,形成一个统一的系统。系统整体设计框图如图5所示。

Figure 5. System hardware design block diagram
图5. 系统硬件设计框图
设计是基于STM32F103C8T6单片机为核心的电池性能检测系统,主要从7.2 V输入开始分两条路线进行,分别是锂电池充电电路和TPS5430降压5 V。而TPS5430线路也分两条路线,一条到STMF103C8T6最小系统板,一条是达到AMS1117-3.3 V从而达到显示。锂电池充电电路的路线是先达到锂电池,然后到达充电电流电压采集,最后到达SMT32F103C8T6最小系统板,最终由STM32F103C8T6最小系统板进行蜂鸣器报警和显示屏显示 [5] 。
3.1. 电流采集电路设计
当电流采集电路作为接收来单片机信号,在单片机中BAT和VS,分别作用电流采集模块的+IN与−IN从而对电流采集电路进行控制。电流采集电路如图6所示。

Figure 6. Current acquisition circuit diagram
图6. 电流采集电路图
3.2. 锂电池充电电路
锂电池充电电路由单片机的LX (3和4引脚)还有BAT9引脚进行控制的;从而由电压电流采集低通滤波的Vout引脚输入电压电流。它是由4个0.1 uF的电容、1个二极管、1个bh-18650电池盒、一个电感线圈以及3个电阻(标识为R5和R6的阻值为10 kΩ和一个标识为R3的电阻为0.05 kΩ)组成的。锂电池充电电路如图7所示。

Figure 7. Lithium battery charging circuit diagram
图7. 锂电池充电电路图
系统硬件模块主要分为电流采集电路、OLED电路、锂电池充电电路、IIC上拉电阻电路、串口接口电路等方面进行设计。系统通过电流采集电路来对电压电流采集低通滤波电路的控制,近而给锂电池充电电路进行充电,从而在OLED屏幕上显示充电时间、电量百分比以及电压。当电池达到充满电时自动断电并蜂鸣器工作发出警报。
3.3. 硬件部分小结
论文电池检测系统硬件模块主要分为电流采集电路、OLED电路、锂电池充电电路、IIC上拉电阻电路、串口接口电路等方面进行设计。在单片机系统中电路通过电流采集电路来对电压电流采集低通滤波电路的控制,近而给锂电池充电电路进行充电,从而在OLED屏幕上显示充电时间、电量百分比以及电压。当电池达到充满电时自动断电并蜂鸣器工作发出警报 [6] 。硬件部分主要介绍了系统的结构和硬件设计,以STM32单片机为核心控制器加外围硬件电路组成系统,对电压、电流和温度参数进行测量,和对充电进行控制,以帮助更准确检测电池电量。
4. 系统软件
4.1. 软件设计思路
在确定了硬件电路的设计后,该系统的控制功能将依赖于软件。在软件设计过程中,首先根据系统的实际要求,分析任务,再着手系统总体程序设计和编程模块化设计。整个系统软件采用汇编和C语言编写,还进行了模块化的设计,增加程序可读性,便于软件功能的测试和调试。系统的单片机程序是基于STM32单片机C语言开发,利用专用的编译器连接器将C语言程序转换成二进制代码,然后可在单片机内执行命令。
4.2. 系统软件流程图
系统主程序流程图执行的步骤如下:首先是初始化系统各个模块,先从单片机基本初始化开始,其次While循环并开启定时器定时1 s的开始,While循环完成之后进行到采集电压电流转化实际值,采集电压电流转化实际值后从显示屏显示采集电压电流值,最后采集道道电压和电流的计算充电程度。然后定时器定时1 s判断是否充电完成,如果完成蜂鸣器报警并停止记时,如何充未完成定时器继续定时,系统主程序流程图如图8所示。

Figure 8. System main program flowchart
图8. 系统主程序流程图
4.3. 电池充电流程图
电池充放电系统主程序流程图执行的步骤如下:首先是初始化系统各个模块,首先系统启动初始化I/O口,其次判断电池充电是否完成,如果条件成立则进入蜂鸣器报警并断电,如果条件不成立则进行电压电流的A/D采集,并屏幕显示电池的信息,然后返回并等待电池是否充满电以此循环,电池充电流程图如图9所示 [7] 。

Figure 9. Battery charging process diagram
图9. 电池充电流程图
4.4. 软件部分小结
在软件设计和硬件设计的基础上,制成该锂电池电量检测系统,并对系统进行初步测试后进行电量检测实验。本系统的基本操作方法是通过上位机监控画面上的读电压、温度和电量按钮来实现监控电池的状态,开始读取后,上位机软件将向电池管理模块发命令要求相应的信息,得到信息数据后将反馈显示在界面上的列表框中。论文软件部分设计思路首先软件设计需要绘制程序流程图,以便更好地理解硬件设计的各个电路模块,并利用这些模块来实现各种功能。
5. 系统调试及测试
当硬件电路系统模块完成调试,并且没有任何问题时,就可以进行软件编程测试。我们可以对各个电路模块进行模块化的编程调试,以便更好地解决硬件电路系统存在的问题。
5.1. 系统功能测试
电池性能检测系统采用分立电路模块设计,通过在A/D软件上绘制原理图后进行布线布局,完成全部连接线和模块之间的连接检查,并分别调试每个模块器件,确保每个独立的电路模块正常工作。然后编写驱动每个模块的功能程序,进行功能调试,在软硬件相结合的调试阶段,使用程序模块化编程思想可以提高调试效率,减少不必要的麻烦。最后完成上述操作后上电进行联合测试,将电源输入到整个实物的软硬件系统中,进行整体功能指标的验证 [8] 。
在进行硬件调试之前,需要进行硬件的制作。在本次设计的制作中,需要用到STM32F103C8T6,电源转5 V模块,SSD1306OLED屏幕、蜂鸣器模块、NCR18650B锂电池等元器件。硬件实物图如图10实物图所示。
论文系统硬件组装完毕后,进行了系统的电池性能检测调试测试。系统的硬件调试测试是验证电池检测系统设计思路的可行性和检验能否实现设计功能的重要过程,通过调试,可以更好地理解设计思路,从而更好地实现设计功能。图11所示为实物未接电源的图。当电池性能检测系统插上电源,系统就会处于开机运行状态,如图12实物接通电源图所示 [9] 。
显示屏显示图如图13所示。LCD第一行显示“V 4.25 I 0.30”,其中“V4.25”标识充电电压为4.25 V,“I0.30”标识充电电流为0.30 A;LCD第二行显示“P 1.29OV4.23”,其中“P 1.29”表示充电功率,“OV4.23”表示充电过程中电池开路电压为4.23 V;LCD第三行显示“T00-00-04”表示已充电时长为4秒;LCD第四行显示“persent 099%”表示现在电池电量百分比为99%。
图14检测电池刚上电测试,LCD第一行显示“V 4.25 I 0.09”,其中“V4.25”标识充电电压为4.25 V,“I 0.09”标识充电电流为0.08 A;LCD第二行显示“P 0.38OV4.25”,其中“P 0.38”表示充电功率,“OV4.25”表示充电过程中电池开路电压为4.25 V;LCD第三行显示“T00-00-01”表示已充电时长为1秒;LCD第四行显示“persent 099%”表示现在电池电量百分比为99%。

Figure 14. Check the battery for power on test
图14. 检测电池刚上电测试
图15检测电池上电速度,LCD第一行显示“V 4.03 I 0.08”,其中“V4.03”标识充电电压为4.03 V,“I 0.08”标识充电电流为0.08 A;LCD第二行显示“P 0.33OV4.02”,其中“P 0.33”表示充电功率,“OV4.02”表示充电过程中电池开路电压为4.02 V;LCD第三行显示“T00-05-56”表示已充电时长为5分56秒;LCD第四行显示“persent 082%”表示现在电池电量百分比为82%。
图16检测电池充满图,LCD第一行显示“V 4.07 I 0.00”,其中“V4.07”标识充电电压为4.07 V,“I 0.00”标识充电电流为0.00 A;LCD第二行显示“P 0.00OV4.07”,其中“P 0.00”表示充电功率,“OV4.07”表示充电过程中电池开路电压为4.07 V;LCD第三行显示“T00-00-01”表示已充电时长为1秒;LCD第四行显示“persent 100%”表示现在电池电量百分比为100% [10] 。
5.2. 功能分析
在本次电池性能检测系统的设计中,我们使用了STM32F103C8T6单片机作为核心处理器。该单片机功能齐全,性能稳定,成本低,而且非常易于携带。它的这些特点使它成为一个理想的选择,可以满足我们对电池性能检测系统的要求。本设计采用模块化设计思路,分别对电池的充电模块进行单独调试,然后再进行整体调试。整个系统测试分为初始化上电测试和滴速测试,测试结果均能达到预期设定的要求,功能正常。
5.3. 调试小结
论文设计在电池检测系统研究的基础上.结合实际充电耗时,充满断电并提醒的要求,并立足现实制作对电池性能检测中的故障进行报警,分析判断故障原因,并可通过IIC屏幕观察电池性能检测系统的运行,故该设计具有一定的理论研究和工程实用价值。
6. 结语
本文分析了锂离子电池的工作原理,提供了论文电池检测系统研究的理论依据,与现有的测定方法相比,本设计中方法的优点在于它充分考虑影响电池的剩余电量的各种因素,使用了大量的实验数据表提供精确的测量结果。论文设计的电池性能检测系统的总体设计中基本实现了分别实现单片机的数据检测,流动电压低通滤波功能,电源转伏功能,以及显示信息等功能。系统经过多次实验测试数据符合预期要求,也存在一些后期改进方向,如在程序代码编写的重复性利用率、相关数据测试的稳定性、系统运行的稳定性以及整体功能指标方面进行优化和控制,以提高电池检测系统的性能和稳定性。
基金项目
2019海南省省级大学生创新创业大创项目,项目名称:安全智能电动车充电器的开发与研究,项目编号:S201913892066。