当前位置:文档之家› 基于单片机的锂离子电池电量检测系统设计本科1毕业论文

基于单片机的锂离子电池电量检测系统设计本科1毕业论文

(此文档为word格式,下载后您可任意编辑修改!)

河南科技学院

毕业设计(论文)机电学院系(院)电气工程及其自动化专业

毕业设计(论文)电动汽车电池电量显示系统

学生姓名张友轩

班级电气工程及其自动化102班

学号

指导教师宋长源

完成日期2014 年 5 月20 日

电动汽车电量显示系统

总计毕业设计(论文) 34 页

表格 7 个

插图 15 幅

摘要

锂离子电池与其他种类的电池相比有着诸多优势,已经成为我们日常生活中必不可少的一部分。相信在使用锂离子电池的过程中,我们常会考虑还剩多少电量的问题,但是又找不到好的电量检测方法,针对该要求,本文设计了一种基于单片机的锂离子电池电量检测系统,该检测系统可以满足我们日常生活中对锂离子电池电量检测的需求,以全面掌握锂离子电池的电量状态。

本文主要叙述了基于单片机的锂离子电池电量检测系统的研究和设计,该系统主要由模拟量采集、锂离子电池检测模块、单片机模块、以及LED驱动显示电量等相应的部分组成,介绍了锂离子电池的特点、电池电量检测原理、系统的结构及性能,重点介绍了该系统的软硬件设计等。

考虑到检测系统的复杂程度、精确性、可靠性等各个方面,本文介绍的设计方案能够满足我们对锂离子电池电量检测的要求。

关键字:锂离子电池BQ2040 电池检测单片机LED显示

Abstract

Compared with other types of batteries, the lithium-ion battery indispensable part of our daily lives. I believe that in the process of using lithium-ion battery, we often consider the question of not find a good power detection method. for the requirements, we design a lithium-ion battery detection system based on MCU, the detection system can meet the demand for lithium-ion battery detection in our daily lives , in order to fully grasp the charge status of the lithium-ion battery.

This paper describes the research and design of lithium-ion battery detection system based on MCU The system consists of a Analog acquisition module, battery detection module, MCU module and LED drive power display modules. the article describes the characteristics of the lithium-ion battery, the battery detection principle, structure and performance of the system,, focusing on the system .

Taking into account the complexity of the detection system, accuracy, reliability, and other aspects, the article describes the design can meet the requirements of our lithium-ion battery detection.

Key words:Lithium-ion battery BQ2040 Battery detection MCU LED display

目录

摘要 ........................................................................................................................................... I Abstract ..................................................................................................................................... I I 第一章绪论.. (1)

1.1 本课题研究的目的及意义 (1)

1.2 本课题研究内容 (1)

1.3 锂离子电池的放电及温度特性 (2)

1.4 锂离子电池电量检测系统的发展方向 (3)

第二章系统总体结构设计 (4)

2.1 系统总体结构框图 (4)

2.2 单片机的选择 (5)

2.2.1 W78E365A40PL引脚说明 (5)

2.2.2 W78E365特性介绍 (6)

2.3 电池电量检测芯片BQ2040 (7)

2.3.1 BQ2040 引脚说明 (7)

2.3.2 BQ2040的检测原理 (8)

2.4 LED驱动控制芯片TM1629 (9)

2.4.1 TM1629引脚说明 (9)

2.4.2 TM1629特性介绍 (10)

2.5 数据传输存储芯片24C64 (11)

2.5.1 24C64概述 (11)

2.5.2 24C64引脚说明 (11)

2.5.3 24C64特性介绍 (12)

2.6 时钟芯片DS1302 (12)

2.6.1 DS1302概述 (12)

2.6.2 DS1302引脚说明 (12)

第三章硬件系统设计 (14)

3.1 单片机与时钟电路部分 (14)

3.1.1 W78E365概述 (14)

3.1.2 电路图设计 (14)

3.2 BQ2040部分 (15)

3.2.1 BQ2040概述 (15)

3.2.2 电路图设计 (16)

3.3 TM1629驱动控制LED显示部分 (16)

3.3.1 TM1629概述 (16)

3.3.2 LED数码管 (16)

3.3.3 电路图设计 (17)

第四章软件系统设计 (18)

4.1 程序设计流程 (18)

4.1.1 初始化 (18)

4.1.2 主程序流程图 (19)

4.1.3 AD转换与中断服务 (20)

4.2 BQ2040总线时序 (21)

第五章系统测试 (23)

结论 (24)

参考文献 (25)

致谢 (26)

附录 (27)

第一章绪论

1.1本课题研究的目的及意义

锂离子电池自问世以来,到现在已经发展成为我们每个人众多生活必需品当中的一部分,是如今人们在日常生活中使用极其广泛的一种电池。我国通讯、电力电子等相关行业的飞速发展,使人们对锂离子电池的利用率和维护工作的重视程度不断提高,锂离子电池电量检测的市场需求随之越来越大。然而现在的实际情况却是由于国内目前的一些检测设备的检测方法不精确等原因,使其不能完全满足我们对锂离子电池电量检测的需求,同时国外的同类检测设备虽然性能较好,但是价格太高,不适合我们日常检测使用。微处理器技术的发展与电池电量检测方法的不断改善,为提高锂离子电池电量检测系统的性能和降低其制造成本提供了可能。针对该要求,本文设计了一种基于单片机的锂离子电池电量检测系统,该检测系统的设计对全面掌握锂离子电池的电量状态,提高其利用率具有现实意义。本设计的研究成果如果能够得到大家的一致认同,以致今后被广泛应用于我们的日常生活当中,比如应用于生活中常用的或常见的便携式电子产品领域,这必将提高人们的日常生活质量,并且还能起到提高锂离子电池利用率的作用,从另一方面看,这也是从某种程度上响应了国家“节能减排”政策。

1.2 本课题研究内容

该课题是设计一个锂离子电池电量检测系统,研究对象为符合国标GBT的锂离子电池,其主要参数有:标称电压3.7V,标称容量1050mAH,充电电压4.2V。在做毕业设计的这段时间里,自己通过互联网查询、图书馆书籍资料搜索等多种途径,对该课题的研究内容进行了充分的理解与学习,使我对锂离子电池的电量检测原理,以及一些基于单片机的C程序编写等内容,都有了进一步的了解与掌握。

本课题研究如何设计一个满足我们日常生活要求的锂离子电池电量检测系统,要求适用于日常使用,必须控制成本,并且需要满足精度的要求。本文的设计思路是利用单片机及一些市场上常见的功能芯片,经过综合所有应考虑的重要因素后,最终确定了该检测系统里的一些重要器件类型,其中单片机部分就选用W78E系列中的W78E365A40PL,锂离子电池的电量检测部分就选用流行于目前市场上并且较专业的电池电量检测芯片BQ2040,输出部分决定采用TM1629驱动控制LED数码输出显示。TM1629是一款专业用于驱动控制LED数码输出显示的芯片,已经被广泛应用于目前的市场中,其次,输出

采用数码显示,易于用户读取所需要的锂离子电池的电量信息,更加人性化。综上,最终设计出基于W78E365A40PL,利用电池电量检测芯片BQ2040,并且数码输出显示我们所需数据的锂离子电池电量检测系统,该系统由模拟量参数采集部分、电量检测部分、中央处理控制部分(单片机)以及LED驱动显示等相应模块组成,前两部分可由BQ2040完成。至此,该基于单片机的锂离子电池电量检测系统的整体框架便已明了。

本文重点介绍了该锂离子电池电量检测系统的硬件设计和软件设计。硬件设计的主要职责就是将系统分割成的各个功能部分组合成一个合理的可行性方案;软件设计则负责根据系统相关的功能要求,进行模块的编程等,最后用Protel等相关软件画出原理图,并利用Proteus仿真,对检测结果的准确性进行测试。

1.3 锂离子电池的放电及温度特性

(一)放电特性

本文必须先对锂离子电池的放电特性进行简单说明,因为如果要检测锂离子电池的电量,对锂离子电池进行放电检测是检测过程中必须经过的一道程序,大部分我们所需要的参数都是在对锂离子电池进行放电过程中得到的,但是对锂离子电池进行放电测试时,其放电力度必须要得到精确的控制,锂离子电池对过放电相当的敏感,一旦放电电压或放电电流超过了本身的承受范围,将会导致锂离子电池自身快速升温,影响锂离子电池的使用寿命及使用性能。

(二)温度特性

虽然在检测过程中需要控制锂离子电池的温度在一定的范围之内,因为不适合的温度,将导致锂离子电池内部生成许多影响检测结果的无用化合物,这是锂离子电池内部化学反应的结果,而且温度影响着锂离子的迁移速度,但是日常生活中的环境温度不会超过锂离子电池正常使用的温度范围,在进行锂离子电池电量检测的过程中,我们不用对锂离子电池所在环境温度进行严格控制。不可以将锂离子电池置于温度过高或过低的环境中存储或使用,不然严重影响锂离子电池的使用寿命及使用性能。

另外附带一句,如果我们要存储锂离子电池时,必须将温度范围控制在(-15一+55)℃,如果是使用锂离子电池或对其进行放电测试,最好将温度范围控制在(-35一+75)℃。

1.4 锂离子电池电量检测系统的发展方向

人性化设计是任何产品能否面向市场并取得成功的决定因素之一。需要为用户提供直观易懂方便操作的界面,锂离子电池电量检测系统的发展方向应从以下几个方面考虑:

①人机互动。在用户进行操作使用的过程中,系统会根据用户的操作反馈显示出诸多的相关提示信息,用户使用起来简单,提升该系统的用户体验。

②系统的内部结构须采用插板式形式。这样就可以打消用户担心产品不易维修的顾虑,对于自己有相关维修经验及能力的用户,也提供了让用户维修的机会,解决了与维修相关的一连串问题。

③相关功能的延伸。善于挖掘、开发出锂离子电池电量检测系统应具备的功能,使产品具备更多有实用价值的相关功能,以适应不同用户对锂离子电池电量检测要求,进一步完善用户体验。

当然,在锂离子电池的使用过程中,还存在诸多的实际性问题,比如说老化,诸多其他不确定性因素也会对检测结果有所影响。未来在开发锂离子电池电量检测系统时,必须全面考虑会对检测过程中或者检测结果造成多多少少影响的因素。这样才能使该锂离子电池电量检测系统一直发展下去,随着时间的推移而不被淘汰。

第二章系统总体结构设计

2.1 系统总体结构框图

该系统总体结构可以划分为几个重要部分:锂离子电池模拟量参数采集部分、电量检测部分、中央处理控制部分(单片机)和LED驱动显示部分。每个部分重要器件的选型已经在前面具体说明,将系统总体结构分为以上各部分后,整个系统的工作原理及重要模块等信息便简单明了,系统每个部分都有着其自己重要的责任,只有系统内的每个模块都按其职责正常运行,整个锂离子电池电池检测系统才能正常工作。如图2-1所示,该图为锂离子电池电量检测系统的总体结构框图,其中模拟量参数采集部分负责通过传感器及测量电路等来采集锂离子电池的模拟量参数,这些参数包括锂离子在放电过程中的电流(压)大小、检测到的温度值等相关参数;电量检测部分主要负责依据上部分已经采集到的参数,对锂离子电池的电量进行检测与计算,这两个部分可由BQ2040完成;中央处理控制部分即单片机负责对整个系统进行控制;LED驱动显示部分负责驱动LED,并对被测锂离子电池的剩余电量信息进行数码输出显示。

图2-1 系统总体结构框图

2.2 单片机的选择

2.2.1 W78E365A40PL引脚说明

在能够满足锂离子电池电量检测系统相关功能的前提下,如何选择一款合适的单片机是关键。本设计采用了W78E系列中的W78E365A40PL,其引脚如下图所示

图2-2W78E365A40PL引脚

表2.1W78E365A40PL引脚说明

引脚符号引脚名称引脚描述

EA外部访问使能端接低电平时,只读取外部程序存储器中的

内容;接高电平时,先读取片内存储器,

若地址超出,自动读取片外程序存储器中

的内容。

PSEN程序存储使能端片外程序存储器读选通信号

ALE地址锁存使能端CPU访问外部ROM或RAM时,输出低八

位地址锁存信号。

RST复位端高电平复位

XTAL1晶体振荡器输入端由一个外部时钟驱动

续表2.1 引脚符号引脚名称引脚描述

XTAL2晶体振荡器输出端XTAL2是XTAL1的反相端

VSS接地接地

VDD电源接电源工作电压

P0.0-P0.7端口0功能与标准8052相同

P1.0-P1.7端口1功能与标准的8052相同

P2.0-P2.7端口2带有内部上拉电路的双向IO口,扩展外部

存储器时,作为高八位地址总线。

P3.0-P3.7端口3功能与标准8052相同

P4.0-P4.3端口4分时复用功能的双向IO口

2.2.2 W78E365特性介绍

(1)电气特性:

表2.2 W78E365电气特性

参数符号最小值最大值单位直流电源电压VDD?VSS -0.3 +6.0 V

输入电压VIN VSS-0.3 VDD+0.3 V

工作温度TA 0 70 ℃

贮存温度TST -55 +150 ℃

注释:使用过程中若长时间超出最大额定值,将会对器件的使用寿命、使用性能、使用可靠性等多方面均造成严重损害。

(2)功能特性:

全静态设计的CMOS8位微处理器

64KB带ISP功能的Flash EPROM

4KB辅助Flash EPROM用于存储装载程序

4个8位双向IO口,一个附加4位IO口

3个16位定时器

一个增强型全双工串行口

看门狗定时器

8个中断源,2级中断能力

电源管理带空闲模式和掉电模式

代码保护

2.3 电池电量检测芯片BQ2040

2.3.1 BQ2040引脚说明

BQ2040引脚分布如下图所示:

图2-3 BQ2040引脚分布

表2.3 BQ2040引脚说明

引脚符号引脚名称引脚描述

VCC 电源电压输入端电源电压输入

ESCL 时钟存储端与外部存储器间进行传输

ESDA 地址数据存储端双向传输

LED1~LFD4 指示灯1-4显示端LED数码输出显示

VSS 逻辑地端接地

SR 电阻器检测输入端接锂离子电池负极和检测电阻

续表2.3 引脚符号引脚名称引脚描述

DISP 显示控制输入端接高电平时LED显示无效;

接低电平时LED显示有效。

SB 第二电池输入端监测锂离子电池的充电参数PSTAT 数据保护输入端锂离子电池保护

SMBD SM数据总线,即数据总线连接端地址和数据的双向传输

SMBC SM时钟总线,即时钟总线连接端双向传输,锁定数据传输

REF 基准电压,即参考电压端为场效应管输出提供参考电压VOUT 供电输出端为外围电路提供电压

2.3.2 BQ2040的检测原理

BQ2040的电量检测原理我们也需要做简单的了解,BQ2040内置了温度传感器,它通过内置的温度传感器和内部计数器来估算被测锂离子电池的放电程度,放电的同时还可以根据温度需要进行温度补偿,并且能够通过锂离子电池的放电周期,校准锂离子电池的实际容量,外接内部写有初始化程序的EEPROM,负责控制电池的管理工作,串口和外部EEPROM可以用来编程。

在日常生活中,使用锂离子电池是一般都不需要进行温度保护,因为日常情况下,锂离子电池工作所在环境温度不会超过其工作温度范围之外,除非需要该锂离子电池一直处于长期的持续的工作状态,这时候应该采取适当的温度保护措施。但是BQ2040是一款流行与目前市场上相当专业的电池电量检测芯片,BQ2040对被测锂离子电池进行电量检测的同时,会检测锂离子电池的温度情况,因为BQ2040内置了温度传感器,可以进行过热保护等控制措施,不需要外接热敏电阻,如果检测到温度过低,这时候BQ2040还可以进行温度补偿,不需要外接谐振器等相关器件,进一步减少了器件,降低了设计成本。

2.4 LED驱动控制芯片TM1629

2.4.1 TM1629引脚说明

图2-4 TM1629引脚分布

表2.4 TM1629引脚说明

引脚符号引脚名称引脚描述

在时钟上升沿从低位开始输入输出串行数据

DI0 数据输入输出

STB 片选端STB为低电平时,其后的第一个字节作为指令;

STB为高电平时,CLK被忽略。

CLK 时钟输入端在时钟上升沿输入输出串行数据。

K0~K3 键盘扫描输入输入该脚的数据在显示周期结束后被锁存。SEG1KS1~SEG8KS8 段输出端段输出

SEG9~SEG16 段输出端段输出

引脚符号引脚名称引脚描述

GRID1~GRID8 位输出端位输出

续表2.4

引脚符号引脚名称引脚描述

VDD 逻辑电源端5V±10%

VSS 逻辑地端接系统地

NC 空脚端内部未连线

注意:在DIO端口输出数据的时候,该引脚需要外接一个带有一定阻值上拉电阻,推荐使用10K的上拉电阻,并且读数时要选择在时钟的上升沿进行,这样才能保证读数的稳定性。读数时若选择在时钟的下降沿,此时读数并不稳定,影响数据准确性。

图2-5 芯片内部电路

2.4.2 TM1629特性介绍

采用功率CMOS工艺

显示模式16段×8位

键扫描(8×4bit)

辉度调节电路

串行接口(CLK,STB,DIO)

内置上电复位电路

采用QFP44封装

2.5 数据传输存储芯片24C64

2.5.1 24C64概述

24C64芯片属于24C系列里面常见的一款,该系列的主要功能是数据的存储及传输。既然是数据传输存储芯片,那么就会有每款芯片带有多少存储位的问题,该系列的芯片拥

有多少存储位可以从24C后面的数字读出来。如ATMEL的24C64,从后面的数字可以读出其存储位为64K。这个系列的芯片具有许多的优势,例如能重复擦写1百万次以上,并且在其内部已经存储成功的数据能够长期保持,时间达100年之久。24C64具有多种封装形式可供选择,现如今已被广大电子行业从业者所接受,广泛应用于电力电子各个领域。

ATMEL的24C64是I2C 总线的EEPROM,I2C总线(Inter Integrated Circuit 内部集成电路总线)是两线式串行总线,只占用微处理器的2个IO 引脚,仅需要时钟和数据两根线就可以进行数据传输,令用户使用起来十分便捷。

2.5.2 24C64引脚说明

图2-6 24C64引脚分布

表2.5 24C64引脚说明

引脚符号引脚名称引脚描述

A0到A2 地址输入端确定连接器件的地址

SDA 串行数据端需要附加一个上拉电阻,双向引脚,可以输出或输

入地址及数据。

SCL 串行时钟输入端产生串行同步时钟信号

VCC 电源输入端电源电压输入

GND 接地端接地

2.5.3 24C64特性介绍

低功耗器件

2线串行接口

双向数据传输协议

写保护引脚用于硬件数据保护

高可靠性

2.6 时钟芯片DS1302

2.6.1 DS1302概述

DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。通过简单的串行接口,采用三线接口与CPU进行同步通信,内部有一个31×8的用于临时性存放数据的静态RAM。它具有主电源后备电源双电源引脚,VCC1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由VCC1或VCC2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,DS1302由VCC2供电;当VCC2小于VCC1时,DS1302由VCC1供电。

DS1302功能:①日期时间信息;②每月的天数和闰年的天数可自动调整;③通过AMPM指示决定采用24或12小时格式;④保持数据和时钟信息时功率小于1mW。

2.6.2 DS1302引脚说明

图2-7 DS1302引脚分布

表2.6 DS1302引脚说明

引脚符号引脚名称引脚描述

X1、X2晶振引脚32.768KHz

GND 接地引脚接地

CE复位脚在读写数据期间必须为高

IO数据输入输出三线接口时的双向数据线

SCLK串行时钟引脚控制数据的输入与输出

VCC1、VCC2电源供电引脚VCC1:主电源;VCC2:备份电源

相关主题
文本预览
相关文档 最新文档