微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 电源设计 > 一种智能锂电池监测系统设计

一种智能锂电池监测系统设计

时间:05-07 来源:互联网 点击:

一、引言

本文实现的锂电池监测系统由DS2762 锂电池监测芯片、51 单片机、液晶显示模块组成。其中的核心功能由DS2762 芯片完成的。本文介绍了系统的硬件实现和软件设计, 以及DS2762 芯片的特性和相关控制软件程序。本系统功能强大、结构简单, 可用于数码相机、智能电话及其它便携式仪器的智能锂电池模块中。

二、系统硬件结构及工作原理

1、系统硬件结构。本系统的硬件设计力求简洁,以便使单片机能够完成更多其他功能。硬件实现如图1 所示:

图1 硬件结构图

整个系统由DS2762 锂电池监测芯片、51 单片机和液晶显示模块组成。DS2762 芯片是MAXIM公司推出的新一代智能锂电池监测芯片, 集数据采集、信息储存、安全保护于一身,具有功能强大、硬件接线简单等特点。它完成对电池当前状态的监测, 包括当前电池的充/ 放电状态、电压、电流、温度和剩余电量等参数的监测。DS2762 芯片能自动采集这些数据, 并将其放在存储器中。

DS2762 的引脚功能如下图2 所示:

图2 引脚功能

PIO: 可编程的I/O 端。根据需要控制用户定义的外围电路。

VDD: 电池正极输入。

Vin: 感应电压输入。

51 单片机按照用户需要对电池的相应参数读取和处理, 然后送往液晶显示模块显示。由于存放这些参数的EEPROM具有非易失性, 所以本系统具有掉电保护功能。由图1 可见, 单片机是整个系统的控制处理中心, 由于大量的工作由单片机完成, 明显地降低了系统硬件复杂度, 极大地提高了系统的智能化。

液晶显示模块显示用户需要了解的电池当前状态信息, 用户根据这些信息以作出相应的处理。它仅仅接受单片机的控制和访问。

工作原理:系统上电后, 先确定电池的工作方式: 单片机每88ms 监测一次电压, 将DS2762的IS1 和IS2 两端的压差( Vis=Vis1- Vis2) 转换成电流后存入电流寄存器。若Vis 为正值, 说明电池正在充电; 若Vis 为负值, 说明电池正在放电, 也就是仪器正由锂电池直流电源供电。接着单片机对DS2762 发出采集电压、温度的控制命令。由于DS2762 内部有A/D 转换器和数字温度传感器, 可自动将电压、温度测量值存入DS2762 相对应的寄存器, 因此, 单片机只要等待其采样完毕后, 读取寄存器的内容, 最后送液晶显示模块显示。

电池的剩余电量可用电流累加寄存器的值求得。电流累加寄存器的值是由DS2762 实时自动测量电池电流后更改的, 无须对其进行控制。电池充电时该值增加, 放电时该值减少。单片机读取此值后即可获得剩余电量。

场效应管FET1、FET2 等构成DS2762的充放电保护回路。过压保护:如果电池电压Vin 超出过压门限电压Vov, 延时Tovd后,DS2762 将关闭充电场效应管FET1.欠压保护: 如果电池电压Vin 低于欠压门限电压Vuv, 延时Tuvd 后,DS2762 将关闭充电和放电场效应管FET1、FET2, 进入睡眠方式, 等待充电指令。充电过流保护:如果Vis(Vis=Vis1- Vis2)超出过流门限Voc, 延时Tocd 后, DS2762 将关闭场效应管FET1、FET2.放电过流保护:如果Vis 低于- Voc, 延时Tocd 后, DS2762 将关闭放电场效应管FET2.短路保护:如果SNS 脚的电压超过短路门限电压, 延时Tscd 后, DS2762 将关闭放电场效应管FET2.

三、系统软件实现及流程图

为了满足监测的实时性, 单片机采用定时中断的方式访问DS2762, 进行电池参数采集。首先设置单片机的计数器为定时方式, 开启定时器, 定时长度可随需要灵活设定; 然后单片机运行其他程序, 等待定时中断的到来, 定时中断发生之后进行中断服务程序, 对数据进行采集、处理和显示; 最后重新初始化定时中断, 返回。图3 是系统总体流程图, 图4 是中断服务流程图。

图3 系统总体流程图

图4 中断服务程序流程图

DS2762 与单片机进行数据通讯时仅用一根数据线( DQ) , 因此必须严格按照芯片的读写时序要求来编写程序, 这样才能保证数据的正确读写。图5、图6 是DS2762 芯片对电池的工作方式和剩余电量进行监测的程序流程图:

图5 电池工作方式监测流程图

图6 剩余电量监测流程图

说明: 1> 单片机对DS2762 进行任意存储命令操作时, 在发出每个命令之前都必须按照DS2762的复位时序要求。先发出复位信号且等待DS2762的应答( 以示DS2762 准备接受或发送数据) , 然后再发出一个ROM 命令用以选择总线上要访问的DS2762.在本文的程序流程图中此过程用DS2762的初始化来代替。2> 在读取寄存器的值时, 为防止读取错误, 先要检查DS2762 是否正在修改寄存器的内容。这可通过判断EEPROM寄存器的EEC 位即可。

四、结束语

本文介绍的基于DS2762 芯片的锂电池监测系统是一种便携式仪器

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top