单片机充电器与蓄电池的关系

发布者:NexusDream最新更新时间:2016-01-06 来源: eefocus关键字:单片机  充电器  蓄电池 手机看文章 扫描二维码
随时随地手机看文章
评估蓄电池的优劣有很多指标,其中寿命是用户十分关心的问题之一。而电池的过充电、过放电和充电不足是引起电池故障最主要的原因,其中过充电、充电不足主要是充电方法不当而引起的。常用的直流充电器只是用恒流定压的方法给蓄电池充电,这样不但不容易使电池充满,更严重的还会造成充电不均衡的情况,影响电池的寿命。
我公司在清华大学飞斯卡尔单片机研究中心的指导下,经过长时间的研究开发,在智能充电算法方面的研究已经取得了一些成果。为了实现智能化充电,我们采用单片机作控制器,实时监控电压、电流,使充电过程按理想的充电曲线进行,达到既保护电池、又能使电池充满的最优效果。
1 智能充电器的硬件结构
传统的电池充电器采用电流负反馈的方法来达到恒流充电的目的。为了加入智能控制,达到实时监控的目的,我们打开电流反馈环,加入单片机及相关控制电路。硬件的结构框图如图1所示。
单片机对正在充电的电池进行实时电压、电流、温度取样,经a/d转换输入单片机。单片机根据电池不同的充电状态采取不同的充电算法,通过d/a转换输出反馈电压,对电源进行控制,通过改变电池组端电压来达到控制充电过程的目的。在充电过程中,单片机还担负着平衡电池组中各电池的容量、防止电池过充电而损坏电池的任务。另外,针对不同种类的电池,只要根据不同电池的最佳充电曲线对控制器里的程序进行相应的调整,就能对不同类型的电池进行充电。
充电器系统中的主要控制部件是单片机。在目前的市场里有很多的充电控制模块可供选择,如武汉力源电子的ps1718、benchmarq的bq2004等,只要接上适当的外围电路,就可以组成不错的充电器。但从经济的角度出发,普通的单片机就可以担负控制器的任务。出于提高系统的集成性和可控性的考虑,我们可以选择内部带a/d、d/a转换的单片机作为控制器。我们所选择的单片机采用高密度cmos技术制造;具有2k的rom或eprom、64byte的ram,已经足够充电控制的需要;可以作为状态显示、输出;一个计时器/计数器,可以实现延时功能;8位a/d转换,可以作为电压、电流、温度检测输入;8位pwm输出,经滤波后可作为反馈电压。
电池对充电过程中的环境温度、电池温度比较敏感,对于这些电池我们可以加入温度测量电路。温度测量有不同的方法,根据精度要求的不同可以采用不同的热敏电阻、或者采用现有的温度传感器、温度检测模块。充电器根据不同的环境、电池温度采取不同的充电算法。
在单片机检测到电池组中电池不平衡的情况下,可以采用均衡充电的方法,使电量较多的电池少充电,电量较少的电池多充电。均衡充电原理图如图2所示。
2 充电算法的设计与实现
根据清华大学飞斯卡尔单片机研究中心与系统国家重点实验室多年的研究,对于蓄电池,采用多段恒流、定压、脉冲的充电算法最有效。程序原理框图如图3所示。
在程序的初始阶段应首先对单片机进行初始化,然后判断电池是否连接正确,根据电池状况判断应该进入哪一个充电阶段。具体实现为开始输出小电压,然后从小电压逐渐往上加,不断读入电池的电压、电流,根据所读入的数据进行判断。
当电池很空的时候,由于电池可能已经处于受损的状态,这时候应该采用小电流恒流充电。这样有利于激活电池内的反应物质,部分恢复受损的电池单元。当电池比较空的时候,可以用大电流恒流充电,使电池在短时间内冲入比较大的电量而不会损坏电池。具体算法采取多段恒流方法,实验证明多段恒流有利于充入更多的电量。当电池比较满的时候,应该采用定压充电,这时候随着充电过程的延续,电流会逐渐下降,这样能保证不会充电过量而损害电池。当电池很满的时候,可以采用的是脉冲充电算法。经试验证明,脉冲充电算法比传统的小电流充电算法不但速度快,而且充入的电量更多。
以上所说有四个充电阶段(小电流、多段恒流、恒压、脉冲)可以采用p、pi、pid算法,以保持电流/电压的恒定。在充电过程的初段,电池处于恒流充电状态,由于电池比较空,控制器对电流的精度要求不高,此时可以采用p算法。通过调整p算法的比例系数kp,可以控制误差的大小。kp越大,电流误差越小,但同时系统稳定性降低。根据控制理论,可以得到以下关系式:
ui,i+1=ui,i+kp×(uo,i-uo,i-1)
δi=a/kp
其中a为充电系统所确定的常数,由实验测得。
在充电过程的定压阶段,为了避免电池过充电,充电器对电压精度的要求比较高,此时应采用pi算法,以达到充电器对电池端电压无差控制的目的。定压控制的原理如图4所示。输出电压ui i+1可由下式计算:
ui,i+1=ui,i+kp× uo,i-uo,i-1)+ki×Σ(uo,j-uo,j-1)
由于电池是一种容性负载,时间常数比较大,加上开关电源电路中也有一定的时延,因此整个电池充电系统的延时是比较大的。另外由于均衡充电电路也会引入很大的干扰,因此充电算法的鲁棒性非常重要,否则很容易出现控制器反应迟缓或出现超调震荡的现象。在这种情况下,pi算法中的常数kp、ki的数值对系统的稳定性非常重要。尤其是ki,其取值范围比较小,很小的变化就会引起系统的震荡。一般情况下,kp、ki的确定可以采用以下方法:
(1)先采用p算法初步确定kp1,选择ki1<<kp1;
(2)经实验调整得ki2;
(3)再经实验调整得kp2;
(4)重复步骤(2)、(3)一到两次;
(5)微调ki,使系统的稳定域尽量大、时间常数尽量小。
必须注意的是,无论在任何阶段,控制器都必须不断检测以下三项关键技术指标:电路是否出现断路、电池是否出现不均衡现象、电池是否达到规定的安全电压。其中电池的断路主要通过检测电流的大小来判断。而且为了避免误判断,应该反复检测。当出现断路时,应重新返回预处理阶段。断路的判断应该在电压已经达到预定值的情况下进行,否则在电压没有达到预定值的情况下,电流比较小,可能出现误判断。均衡充电是智能电器的另一个重要特点。在充电的过程中,由于电池的质量不相同,容量小、质量差电池的电压在充入相同电量后会出现电压增加比另一个电池多的情况,如果不采取措施,它们的电压差将会增大,以至其中一个电池很快达到规定的安全电压,充电过程被迫停止。这时候应该对电压高的电池进行放电,即均衡充电。这样有利于恢复电池内受损的单元,使充电过程能顺利地进行下去。为了防止电池冲坏,在电池电压到达规定的安全电压时应立刻停止充电,否则会损坏电池。
综上所述,智能充电器是根据目前蓄电池的现实需要而开发的,在引入了单片机作为控制器以后充电效果更加理想,达到了在保证电池安全的情况下尽量多充入电量的预期效果。
关键字:单片机  充电器  蓄电池 引用地址:单片机充电器与蓄电池的关系

上一篇:学习单片机必备
下一篇:单片机系统的基本概念

推荐阅读最新更新时间:2024-03-16 14:42

AVR单片机电源管理及睡眠模式
简介:睡眠模式可以使应用程序关闭 MCU 中没有使用的模块,从而降低功耗。AVR 具有不同 的睡眠模式,允许用户根据自己的应用要求实施剪裁。 /* 状态寄存器SREG bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 I T H S V N Z C I:全局中断使能位。 在I置位后,单独的中断使能由不同的中断寄存器控制。若I为0,则禁止中断。 MCU控制寄存器MCUCR bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 SM2 SE SM1 SM0 ISC11 ISC10 ISC01 ISC00 SE:MCU休眠使能位 为了使 MC
[单片机]
8位MCU直流变频抽油烟机方案
通常吸抽油烟机转速靠人工调节,因此为了达到最佳排油效果及节能目的,往往需要使用者多次人工干预。因此,为了使抽油烟机可实现自动调速、降低噪音、解放人力并最大限度地节能,瑞萨电子(本文涉及产品主要为瑞萨电子原NEC部分)推出了一系列变频控制专用的8位MCU。变频抽油烟机的特点 抽油烟机变频的目的是为了通过调整抽油烟机上的带动风扇的电机转速,进而根据油烟量的大小调整油烟抽吸的快慢。优良的调速和节能效果使得变频抽油烟机在性能上明显优越于传统的抽油烟机,而变频抽油烟机根据具体的变频技术有不同的分类和性能特点,如表1所示。 现如今已经有变频抽油烟机面市,但绝大部分是有档位变频抽油烟机,一般分为弱、中、强三档;只有少数知名
[单片机]
8位<font color='red'>MCU</font>直流变频抽油烟机方案
单片机 I2C操作笔记——以 AT24C04为例
1.前言 对于大多数工程师而言,I2C永远是一个头疼的问题。相比UART和SPI而言,I2C的时序要复杂一些,I2C组合变化也丰富一些。在这里以AT24C04为例说明I2C使用过程中的一些注意点。 2.AT24C04操作示意图 图 AT24C04操作示意图 示意图说明:示意图分阐述了4种不同的操作方式,例如写单个存储单元,写多个存储单元,读单个存储单元和写单个存储单元。对于单个操作而言,上部为MCU通过I2C输出的相关指令,下部为I2C设备的响应。例如写单个存储单元操作时,MCU发出I2C启动,设备地址,写标志位等,而I2C设备输出多个ACK。 3.若干说明 3.1 基本操作方式 I2C设备的操作可分为写单个
[单片机]
51单片机LCD12864显示屏图片中文英文显示
显示结果: 图片及字体取模 单片机源程序如下: #include reg51.h #include intrins.h #include stdlib.h #define uchar unsigned char #define uint unsigned int //定义端口 sbit A0=P2^0; //定义端口是传输命令还是数据, sbit RW=P2^1;//定义端口是读取还是写入, sbit LCDEN=P2^2;//芯片使能启动 sbit RST=P2^3;//复位键 uchar code dis1 ={/*-- 文字: 我 --*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x
[单片机]
51<font color='red'>单片机</font>LCD12864显示屏图片中文英文显示
PC机与单片机间串行通信的实现
单片微型计算机简称单片机,它是将中央处理器(CPU)、存储器(RAM,ROM)、定时/计数器和各种接口电路都集成到一块集成电路芯片上的微型计算机。随着计算机技术尤其是单片机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、湿度等参数进行检测和控制。PC机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC机的RS 232串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。因此如何实现PC机与单片机之间的通信具有非常重要的现实意义。针对一些远距离控制或者是危险性比较高的数据采集和控制的应用情况,本文主要介绍一种用双工方式实现PC机与单片机之间的串行通信。 1 设计方案
[单片机]
PC机与<font color='red'>单片机</font>间串行通信的实现
关于单片机的C语言编程基础知识(初学注意)
80C51上的C语言编程 C51的特色: (1)学习过C语言的同学在对单片机有了基本了解之后,就可以开始试着写一两个基于单片机的C语言的程序了。C51语言继承了ANSI C 的绝大部分的特性,基本的语法相同,同学们上手会比较快。但是,由于C51语言是对硬件进行控制的编程语言,其本身又在硬件结构上有所扩展以增强C语言对硬件的控制,如关键字sbit,data,code等(后面会讲他们是做什么的)。 (2)因为单片机不是我们平时用的计算机,他的英文名为MCU(微控制器),特点体现在这个“微”字。因而,它里面的硬件资源是非常少的,所以你在写程序的时候就要注意对RAM(存储数据)和ROM(存储程序)的使用。说白了,就是也程序的时候要
[单片机]
51单片机计时器中断
单片机中,中断算是一个比较重要的部分,在51单片机中有八种中断方式 ,其中常用的的有五种,分别是外部中断0,计时器中断0,外部中断1,计时器中断1,和串口中断。今天主要介绍的是计时器中断。 51单片机给我们提供了2个计时器中断,分别是计时器0和计时器1,他们对应的优先级分别是1和3,开启计时器并允许其中断后,计时器会从给定的初始值开始,每个指令周期加1,直到加到65535,再加一时计时器溢出,计时器此时会进入中断,并执行中断服务函数。 在编程过程中发现有许多人搞不清中断服务函数与一般函数的区别,他们总是问出诸如中断服务函数在程序中哪一句之前或哪一句之后执行的问题。其实中断服务函数虽然也是个函数,但是它与一般函数还是有一
[单片机]
51单片机【二】LED闪烁及流水灯附带c语言位操作
void main(void) { while (1) { gLed1 = 0; // 点亮LED Delay(); // 延时一段时间 gLed1 = 1; // 熄灭LED Delay(); // 延时一段时间 } } void FlashLed1(void) { LED_PORT = 0x7f; // 0b01111111,左边数第1颗LED亮其他灭 Delay(); LED_PORT = 0xbf; // 0b10111111,左边数第2颗LED亮其他灭 Delay(); LED_PORT = 0xdf; // 0b11011111,左边数第3颗LED亮其他灭 Delay(
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved