设为首页收藏本站优领域

优领域

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
优领域 优领域 电子领域 技术文库 电源 查看内容

电动车智能充电器设计

2014-5-22 14:31| 发布者: dzly| 查看: 558| 评论: 0|原作者: 王 莹 ,许洋洋

摘要: 随着能源的日益紧缺和大气污染的加剧,作为新型交通工具的电动车的研究日益受到重视。作为电动车核心部件的电 池及其充电器,其性能的优劣,直接影响电动车的质量状况。因此,本文提出了一种基于C 语言和单片机的电动车智能充电器 设计方案。该系统的硬件部分主要用来模拟智能充电器的各种输入信号,软件部分采用C 语言进行编程,能够完成对其输出信 号进行检测。最终实现了电压、电流、温度等参数的检测。

  0 引言如今,随着越来越多的电器的出现,对高性能、小尺寸、重量轻的电池充电器的需求也越来越大。电池技术的持续进步也要求更复杂的充电算法以实现快速、安全的充电。因此需要对充电过程进行更精确的监控,以缩短充电时间、达到最大的电池容量,并防止电池损坏。本文的主要研究目标为实现在充电过程中对电压、电流、温度等参数的检测,具有充电状态、时间等显示功能,具有过欠压、过欠流及超温等情况的处理和报警等。
  1 系统的硬件电路设计1.1 AT89C52 的功能特点AT89C52 是一个低电压,高性能CMOS 8 位单片机,片内含4kbytes 的可反复擦写的Flash 只读程序存储器和256 bytes 的随机存取数据存储器(RAM),器件采用ATMEL 公司的高密度、非易失性存储技术生产,兼容标准MCS-51 指令系统,片内置通用8 位中央处理器和Flash 存储单元。
  AT89C52 是一个低功耗高性能单片机,40 个引脚,32 个外部双向输入/ 输出(I/O)端口,同时内含2 个外中断口,2 个16位可编程定时计数器,2 个全双工串行通信口,其将通用的微处理器和Flash 存储器结合在一起,特别是可反复擦写的Flash 存储器可有效地降低开发成本。
  1.2 ADC0809 模块的简介及原理ADC0809 是美国国家半导体公司生产的CMOS 工艺8 通道,8 位逐次逼近式A/D 转换器。其内部有一个8 通道多路开关,它可以根据地址码锁存译码后的信号,只选通8 路模拟输入信号中的一个进行A/D 转换。START 为转换启动信号。当START 上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D 转换;在转换期间,START 应保持低电平。单片机输出转换得到的数据。OE = 1,输出转换得到的数据;OE = 0,输出数据线呈高阻状态。D7 -D0 为数字量输出线。CLK 为时钟输入信号线。其工作过程:(1)ADC0809 内部带有输出锁存器,可以与AT89S51 单片机直接相连。(2)初始化时,使ST 和OE 信号全为低电平。(3)送要转换的哪一通道的地址到A,B,C 端口上。(4)在ST 端给出一个至少有100ns 宽的正脉冲信号。(5)是否转换完毕,我们根据EOC 信号来判断。(6)当EOC 变为高电平时,这时给OE 为高电平,转换的数据就输出给单片机了。  1.3 按键控制电路设计本方案中采用独立按键控制。其中,按键1 功能为选择性显示电池的充电时间、电压、电流、温度;按键2 功能为电池充电模式的选择。
  1.4 数码管显示电路设计该设计方案采用四位数码管显示超声波测出障碍物的距离。
  由于在该系统设计中I/O 口较为紧张,故采用数码管动态扫描显示,P1 口段选,P2 口低三位接译码器控制位选,从而达到以少的I/O 接口,实现1—8 位的数码管动态显示。
  1.5 报警电路设计
  本方案设有温度、过压、过流报警功能,即电池温度、充电电流、电压超标时,提示用户采取相应措施。由AT89C52 的P2.7 提供蜂鸣器的控制信号。
  2 系统的软件电路设计
  2.1 系统软件的功能要求
  根据电动车电池的充放电特点,研究充电控制技术,编写以单片机为核心的电动车智能充电器的控制程序,实现智能充电。
  按照充电过程电压、电流、温度及充电时间的变化,实现充电自动控制,从而延长电池使用寿命。其主要研究目标为:(1)实现在充电过程中对电压、电流、温度等参数的检测。
  (2)具有充电状态、时间等显示功能。
  (3)具有过欠压、过欠流及超温等情况的处理和报警。
  (4)以及对充电过程的不同阶段编写相应的控制算法。
  该系统中对电压、电流的调节是通过搭建三种不同的电路实现的,分别为预充电、恒压充电、恒流充电。A/D 采集的数据经过AT89C52 单片机的判断选择不同的充电电路;系统的显示部分采用的数码管动态显示。为保证其显示效果亮度均匀,需要准确的设定其数码管扫描时间;同时在系统中加入报警程序,温度过高就报警。程序设计时将定时/ 计数器T0,设定为6 位计数器、工作方式2,单独用来对A/D 发送脉冲;将定时/ 计数器T1,设定为16 位定时器、工作方式1,用来控制键盘扫描周期、数码管的扫描周期和时间计数等。其系统总体结构框图如下图1-1 所示。


  1-1 系统总体结构图
  Fig.1-1 Structure diagram of the power control unittest system
  2.2 系统软件的各功能软件程序设计
  在充电器的充电过程中,采集参数,进行电压、电流、温度的实时显示。其软件设计流程如下图1-2 所示:

图1-2 软件设计流程图


  由主程序流程图可知,在经过AD 转换器采集电压、电流,温度传感器采集温度后,扫描键盘。本次设计使用独立按键,按键一用来控制温度、电压、电流、时间的显示,按键二用来控制充电方式的选择,由于开始时蓄电池电压低,若以大电流充电,有损电池寿命,因此,当电流小于1.8A 时为小电流预充电,当电流大于1.8A 时为恒压充电,在恒定电流充电方式下,充到输出电压达到设定的电池组端电压值。然后,输出电压维持恒定不变,电池充满,充电结束。
  本系统的软件部分设计主要包含以下几个方面:(1)主函数程序设计。在主程序设计中,为增加程序的可读性,将主程序中对定时/ 计数器T0、T1 的初始化和按键扫描分别作为其子函数。
  (2) 按键控制显示程序。按键一通过按键按下次数的不同来控制温度、电压、电流、时间的轮流动态显示。
  (3)AD 转换模块启动控制程序。由ADC0809 模块的时序图可知AD 转换模块启动条件为:模块的控制端(Trig)应输入一个10us 以上的高电平。考虑到超声波模块的最大测量距离与其测量周期有关,测量周期越大其测量距离越远,但系统反应将会变得迟钝。综合以上考虑,本方案设定测量周期为100ms。其源程序如下:
  Void ad _just()
  {
  If (INT==0)
  {
  CS=0;
  R=0;
  _ nop _();_nop_();_nop_(); _nop_();
  dat=P0;
  _nop_();_nop_();_nop_();_nop_();
  R=1;
  }
  }
  (4)温度传感器的启动控制程序。
  (5)过流过压程序设计。本系统设计的智能充电器有过流过压的自我保护功能,为避免电池烧坏,当电流、电压过大,超过设定的上限值,电池充电器将会自动报警,保证电池安全,延长电池寿命。其源程序如下:if(dat2>230)// 电流大于3A 报警
  SPeaker=0;
  if(dat1>230)// 电压大于 4.5V 报警
  SPeaker=0;
  (6)蜂鸣器报警程序设计。在主程序中设定报警上限值,超过限值即报警。
  (7)充电模式切换程序设计。智能充电器能够通过采集电池的电压、电流来判断电池的充电模式。其源程序如下:3 结论
  本次系统软件部分联机调试均在LY-51S V2.0 单片机开发板进行。该实验主板集成USB 转串口芯片PL2303,只要1 根usb线就可以实现供电、下载、通讯一体。能够实现电压、电流的实时采集及动态显示。当改变电源的电压电流时,数码管显示的的数字能够随之改变,同时,电池的充电模式也会随之改。能够实现时间、电压、电流、温度的动态显示,实现过压、过流、温度过高报警。
  当温度超过上限值时,系统自动报警,当使用者发现报警,只需通过按下按键一就可灭掉报警。过流、过压的情况与此相同。
  
  

网站统计|优领域|优领域 ( 粤ICP备12011853号-1 )  

GMT+8, 2019-6-17 17:10 , Processed in 0.040541 second(s), 12 queries .

Copyright © 2008-2014 优领域

回顶部