APP下载

锂电子蓄电池管理系统的软件模块设计

2020-01-16刘懿霄

电子技术与软件工程 2019年22期
关键词:子程序流程图程序设计

文/刘懿霄

1 单片机软件设计

本系统的软件是在MDK 平台下实现的。MDK 软件是德国的KEIL 公司生产的,它的全称是RealView MDK。这个软件主要针对ARM 处理器,是Cortex M 内核处理器最好的开发工具选择。MDK 软件目前的最新版本是MDK5.10。MDK 软件由两大部分组成:MDK Core 和Software Packs。

2 主程序设计

电池管理系统的主程序设计主要包括电流和环境温度的采集、电压的采集,还要进行SOC 估算、电池均衡、数据存储等功能,然后使用SPI 与采集板通信,使用串口与上位机通信。

同时,系统还需要初始化。

3 采集板主程序设计

首先,需要考虑的是基于LTC6804 的工作流程。LTC6804 在采集板上电后需要对其进行初始化,初始化的内容主要包括配置寄存器组,配置主要包括设置过压和欠压的限定,哪节电池需要进行放电等。配置结束以后可以开始测量电池的电压,还要读取状态寄存器组。芯片LTC6804 总共有2 个状态寄存器组,这两个状态寄存器的主要作用是存放总的测量电压、芯片的温度、过压的电池和欠压的电池的标记。采集板主程序设计流程图如图1所示。

4 管理系统子程序设计

4.1 电压采集和均衡子程序

电压采集和均衡是通过LTC6804 来完成的。电压的采集是通过芯片LTC6804 的C 端口来实现的,电压的均衡是通过控制S 均衡驱动端口的开闭来控制均衡电路。

图1:采集板程序流程图

图2:电压均衡控制流程图

图3:温度采集流程图

图4:温度调节子程序

为了实现系统的均衡,本文设置了一个中值参考电压。该电压定义为Δ U0,把这个电压值和最大电压电池与最小电压电池的差值Δ U对比,从而得出是否需要均衡的结论。当得出需要均衡的结论时,S 引脚驱动MOS 管的栅极,控制均衡电路,实现系统的均衡调节。电压均衡管理流程图如图2所示。

4.2 温度采集及调节子程序

温度的采集是温度传感器DS18B20 完成的,温度信息采集后,需要对温度信息进行判断,温度是否异常,系统是否需要进行温度调控,温度的采集流程图如图3所示。温度需要调控的情况主要有两种:

(1)电池的温度过高,电池温度大于温度上限50°;

(2)电池的温度过低,电池的温度小于温度下限0°。

当电池的温度过高时,过温信号被传递给STM32,根据实际的情况决定是否要进行温度的调控,从而把温度降低到合理范围。当电池温度过低时,充放电的效率随着电池温度的降低而降低,采用同样的调节流程,从而使电池温度升高,电池温度升高到合理范围。温度调节的子程序如图4所示。

5 上位机监控界面设计

上位机监控界面利用的是LabVIEW。LabVIEW 是由美国国家仪器公司(NI)研制并进行开发的。

LabVIEW 的研制和开发是为了帮助科学家进行开发研究,也是为了提高创新能力和技术。LabVIEW 有很多优点:

(1)硬件是普遍使用的,差异在软件。

(2)计算机的能力可以得到充分地发挥,数据处理能力非常强大,可以在一定程度上创造功能更强大的仪器。

(3)用户在使用的过程中可以优先考虑自己的需要,然后根据自己的需要定义和制造仪器。

上位机软件的主要功能有:电池电压和电流的检测以及数据读取并分析等功能。登录界面和电池管理系统界面组成了上位机的前面板。登录界面是程序员管理程序设定的,所以已经预先设置了用户名和密码,只有在输入了正确的用户名和密码的时候才能跳到电池管理系统界面。

电池管理系统界面主要包括的部分有:串口、参数设置、当前的日期和时间、实时显示电池的电压、电流和温度。参数设置的功能是设置电压、电流和温度的上限值与下限值,当电池的电压、电流和温度出现问题时,对应的上限和下限的指示灯会由绿变红来提醒用户。

BMS 的软件设计是重点部分,软件部分控制着硬件部分的操作并且要对采集的数据进行分析来进行控制动作和状态分析,所以电池管理系统的软件部分能很好地保证电池管理系统安全稳定地运行。电池管理系统软件部分的设计需要结合硬件部分的设计以及电池管理系统想要实现的功能,所以,软件部分的设计需要保障系统能够实现电压、电流、温度等信息的精确采集,实现SOC 估算,同时还要实现均衡等功能。

猜你喜欢

子程序流程图程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索
专利申请审批流程图
专利申请审批流程图
PLC梯形图程序设计技巧及应用
子程序在数控车加工槽中的应用探索
宁海县村级权力清单36条
《天津医药》稿件处理流程图
简化编程与子程序嵌套的应用