数字化智能充电器的设计(CD4051)
发布时间:2008/5/28 0:00:00 访问次数:362
现代通讯设备、便携式电子产品、笔记本电脑、电动汽车、小卫星等普遍使用蓄电池作为电源,应用非常广泛。然而大多数设备中的蓄电池,只能使用专用的充电器,而且普通的充电器大多充电时间长,无法判断其充电参数和剩余的充电时间。
本文介绍一种基于单片机的通用智能充电器的设计。充电器可以实时采集电池的电压、电流,对充电过程进行智能控制,计算电池已充的电量和剩余的充电时间;还可以通过串口和上位机进行通讯并给用户显示必要的信息,有虚拟仪表的作用;另外,它也可以改变参数,适应各种不同电池的充电。这里列举几种不同的电池充电试验,来说明智能充电器的实用价值。
1 智能充电器的硬件设计
智能充电器如图1所示。主要包括电源变换电路、采样电路、处理器、脉宽调制控制器和电池组等,形成了一个闭环系统[4]。下面对系统的工作原理分几个部分进行简述。
1.1 处理器
处理器采用51系列单片机89c51。单片机内部有两个定时器、两个外部中断和一个串口中断、三个八路的i/o口,采用11.0592mhz的晶振。单片机的任务是通过采样电路实时采集电池的充电状态,通过计算决定下一阶段的充电电流,然后发送命令给控制器控制电流的大小。单片机通过串口rs232和上位机相连,用于存储数据和虚拟显示。
1.2 采样部分
电压和电流采样采用模/数转换器ad574。ad574为±15v双电源供电,12位输出,最大误差为±4bit,合计电压0.01v。
充电电流通过电流传感器max471转换为电压值。电流采样的电压值和电池组的端电压值两者经过模拟开关cd4051,再经过电压跟随器输入到ad574,分别进行转换,其结果由单片机读取,并进行存储和处理。主要的电路连接如图2所示。
1.3 控制器
控制器采用脉宽调制(pwm)方式控制供电电流的大小。pwm发生器由另一个20mhz的单片机构成,主控制器和它采用中断的方式进行通讯,控制其增大或减小脉宽。pwm信号通过光电隔离驱动主回路上的mosfet。开关管、二极管、lc电路构成开关稳压电源。用pwm方式控制的开关电源可以减小功耗,同时便于进行数字化控制,但母线的纹波系数相对较大。pwm控制电路如图3所示。
2 智能充电器的软件设计
2.1 数据测量
在单片机的测量中,电池电压值和电流测量值经过多路选择器进行选择,然后通过a/d转换器转换为16进制数,直接存入单片机。电池电容量c则需要间接计算,由于每个循环 周期检测电流一次,故可以利用电流值的积分求出电容量c。考虑电池内阻r的影响,可以得到计算电容量的计算公式为:
cn+1=cn+i·t-i2·r·t
充电时间和剩余充电时间由上位机进行计算,剩余充电时间等于预设的充电时间与已充电时间的差值。其中,预设时间可根据电池的型号预先得到。
2.2 单片机控制程序设计
对于不同的电池和不同的参数,单片机需要设定不同的充电参数,选择不同的充电策略。另外,程序需要在电池过电流、过电压等异常情况下强制终止充电。以锂离子电池为例,一般采用恒流-恒压充电方式,其充电过程包括小电流预充电、大电流充电、恒压充电等几部分。其充电控制程序流程图如图4所示。
在控制恒定电流和恒定电压的过程中,采用比例控制,即如果充电电流i大于设定电流is,就按照比例减小脉宽;反之按照比例增大脉宽。单片机还需要接收和处理上位机的命令,并根据上位机的要求将数据实时回送给上位机。两者的通讯协议要在程序中预先设定。
2.3 上位机处理程序设计
上位机程序由visualc++编写。其任务是每隔1秒钟向串口发送一个查询命令,并读取单片机回送的信息,提取充电电流、充电电压、工作状态等参数。参数经过数制转换和计算后进行显示。软件有着良好的用户界面,可以方便地观测电池目前的工作状态以及剩余充电时间等信息。上位机程序会同时把读到的数据存储到文件中,这些数据可以利用其它数学软件(如matlab)进行处理。
另外,程序在初始化时要把充电电池的型号参数发送
现代通讯设备、便携式电子产品、笔记本电脑、电动汽车、小卫星等普遍使用蓄电池作为电源,应用非常广泛。然而大多数设备中的蓄电池,只能使用专用的充电器,而且普通的充电器大多充电时间长,无法判断其充电参数和剩余的充电时间。
本文介绍一种基于单片机的通用智能充电器的设计。充电器可以实时采集电池的电压、电流,对充电过程进行智能控制,计算电池已充的电量和剩余的充电时间;还可以通过串口和上位机进行通讯并给用户显示必要的信息,有虚拟仪表的作用;另外,它也可以改变参数,适应各种不同电池的充电。这里列举几种不同的电池充电试验,来说明智能充电器的实用价值。
1 智能充电器的硬件设计
智能充电器如图1所示。主要包括电源变换电路、采样电路、处理器、脉宽调制控制器和电池组等,形成了一个闭环系统[4]。下面对系统的工作原理分几个部分进行简述。
1.1 处理器
处理器采用51系列单片机89c51。单片机内部有两个定时器、两个外部中断和一个串口中断、三个八路的i/o口,采用11.0592mhz的晶振。单片机的任务是通过采样电路实时采集电池的充电状态,通过计算决定下一阶段的充电电流,然后发送命令给控制器控制电流的大小。单片机通过串口rs232和上位机相连,用于存储数据和虚拟显示。
1.2 采样部分
电压和电流采样采用模/数转换器ad574。ad574为±15v双电源供电,12位输出,最大误差为±4bit,合计电压0.01v。
充电电流通过电流传感器max471转换为电压值。电流采样的电压值和电池组的端电压值两者经过模拟开关cd4051,再经过电压跟随器输入到ad574,分别进行转换,其结果由单片机读取,并进行存储和处理。主要的电路连接如图2所示。
1.3 控制器
控制器采用脉宽调制(pwm)方式控制供电电流的大小。pwm发生器由另一个20mhz的单片机构成,主控制器和它采用中断的方式进行通讯,控制其增大或减小脉宽。pwm信号通过光电隔离驱动主回路上的mosfet。开关管、二极管、lc电路构成开关稳压电源。用pwm方式控制的开关电源可以减小功耗,同时便于进行数字化控制,但母线的纹波系数相对较大。pwm控制电路如图3所示。
2 智能充电器的软件设计
2.1 数据测量
在单片机的测量中,电池电压值和电流测量值经过多路选择器进行选择,然后通过a/d转换器转换为16进制数,直接存入单片机。电池电容量c则需要间接计算,由于每个循环 周期检测电流一次,故可以利用电流值的积分求出电容量c。考虑电池内阻r的影响,可以得到计算电容量的计算公式为:
cn+1=cn+i·t-i2·r·t
充电时间和剩余充电时间由上位机进行计算,剩余充电时间等于预设的充电时间与已充电时间的差值。其中,预设时间可根据电池的型号预先得到。
2.2 单片机控制程序设计
对于不同的电池和不同的参数,单片机需要设定不同的充电参数,选择不同的充电策略。另外,程序需要在电池过电流、过电压等异常情况下强制终止充电。以锂离子电池为例,一般采用恒流-恒压充电方式,其充电过程包括小电流预充电、大电流充电、恒压充电等几部分。其充电控制程序流程图如图4所示。
在控制恒定电流和恒定电压的过程中,采用比例控制,即如果充电电流i大于设定电流is,就按照比例减小脉宽;反之按照比例增大脉宽。单片机还需要接收和处理上位机的命令,并根据上位机的要求将数据实时回送给上位机。两者的通讯协议要在程序中预先设定。
2.3 上位机处理程序设计
上位机程序由visualc++编写。其任务是每隔1秒钟向串口发送一个查询命令,并读取单片机回送的信息,提取充电电流、充电电压、工作状态等参数。参数经过数制转换和计算后进行显示。软件有着良好的用户界面,可以方便地观测电池目前的工作状态以及剩余充电时间等信息。上位机程序会同时把读到的数据存储到文件中,这些数据可以利用其它数学软件(如matlab)进行处理。
另外,程序在初始化时要把充电电池的型号参数发送
上一篇:新型太阳能充电器的研究与设计
热门点击
- TIP32C在稳压电路中的作用
- 10KV线路单相接地故障处理方法初探
- 用LM324等设计的低成本高精度温度测量电路
- LM2907频率/电压转换器原理及应用
- 电池低电压指示及控制电路设计
- 集成电路中的MOS晶体管模型
- MOS管的阈值电压探讨
- PN结耗尽区研究
- MOS晶体管的平方律转移特性
- 三端稳压集成电路LM317应用
推荐技术资料
- Seeed Studio
- Seeed Studio绐我们的印象总是和绘画脱离不了... [详细]