论文部分内容阅读
摘 要:本文主要对以MC68HC908SR12单片机为核心的智能充电器原理和功能进行了介绍,向我们展示了一款高性能的智能充电器。
关键词:单片机 A/D转换 I2C总线 传感器 电磁干扰
一、概述
1、功能特性
·以MC68HC 908SR12芯片为控制核心:
·根据二次电池的充电特性,能自动识别镍镉电池、镍氢电池和锂离子电池,自动选择相应的算法和控制模块对其快速充电;
·采用最高温度、Tmax最高端电压Vmax、电压负增长-△V、最长充电时间t ma x、温度变化率△T/△t、电压负增长-△V等充电终止法:
·能对1-4节的镍镉电池,镍氢电池单独或同时充电;
·能对1-2节的锂离子电池单独或同时充电;
·较高的充电速率,每O.1Ah的充电时间小于10min,
·对镍镉电池,镍氢电池等有记忆效应的电池采用脉冲充电模式,以减小记忆效应;
·对锂离子电池采用恒流转恒压的充电模式:
·采用集成度较高的I2C接口的数字温度传感器LM92,实时检测电池温度;
·设有三保护措施:过充电保护,过放电保护和过电流保护:
·设有电池保护装置,杜绝短路、开路和反接。
·当快速充电结束后自动转入涓流充电模式。
2、系统
其核心是一块MC68HC908SR1芯片,主要电路有电源电路、恒流恒压电路、温度检测电路、键盘电路及显示四部分电路。
二、硬件设计
1、电源电路
充电器的供电设备使用开关电源。
开关电源采用脉冲调制方式PWM和MOSFET、BTS、IGBT等电子器件进行设计。该电源具有调压、限流、过热保护等功能。同线性电源相比其输入电压范围宽、体积小、重量轻、效率高。但其缺点是有脉冲扰动干扰,设计电路板时采用同主控板隔离和添加屏蔽罩等措施,来抑制干扰。
2、恒流恒压电路
智能充电器的关键部分是恒流恒压电路。该电路由SR12单片机片内模拟电路模块和片外的、滤波电感、滤波电容、MOSFET开关管、肖特基二极管等器件组成。模拟电路模块是SR12的特有部件,它由输入多路开关、两组可程控放大器、片内温度传感器、电流检测电路等组成。可程控放大器总放大倍数为1-256。放大器的输入可选择为两路模拟输入脚(ATDO、ATD1)、片内温度传感器、模拟地输入(V SSAM)。ATDO和V SSAM间可接一个电流检测电阻,用于测量外部电流,它还连接至电流检测电路,可在电流超过指定值时产生中断并输出信号。
在充电开始前的预处理阶段,根据不同的电池,软件自动匹配充电算法,将通道选择控制字写入SR12单片机的AMCR寄存器中,将两级可程控运算放大器的增益值写入AMGCR寄存器中。充电开始后,软件定时采集采样电阻Rsense上的电压值,经过计算,设置SR12单片机PWM的输出参数。同时,电流检测电路实时检测充电电流,在电流超过指定值时产生中断并将 SR12单片机PTCO/PWMO/CD端口置为低电平,及时关断充电电流,实现恒流恒压的充电控制。
3、温度检测电路
本设计选用集成电路温度传感器LM92检测电池温度。同时,利用SR12 单片机的内部温度传感器概略监测环境温度,其测温范围-20℃-70℃。LM92是美国国家半导体公司出品的单片高精度数字温度传感器。其内部的12位温度模数转换器,可将被感应温度的模拟量转换为0.0625℃量化间隔的数字量,常温下精度可达±0.33℃,并可与用户设置的温度点进行比较。其片内寄存器可以设置高/低的温度窗口门限及临界温度告警门限,当温度偏离设置门限时,漏级开路中断INT及临界温度告警T_CRIT_A输出有效信号。通过I2C总线接口可对该传感器的内部寄存器进行读/写操作,最多可允许4片LM92挂接在同一条串行总线上。
MC68HC908SR12单片机具有I2C接口控制模块,使用通道0(SDAO和SCLO),可十分方便地同温度传感器LM92连接。LM92采用I2C串行总线和数据传输协议实现同MC68HCg08SR12单片机的数据传输。在数据传输的过程中LM92为从器件,通过数据输入、输出线SDA以及时钟信号线SCL与总线相连。当SCL保持高电平时,SDA从高电平到低电平的跳变作为数据传输的开始信号,随后传送LM92的地址信息和读/写控制位。
4、键盘响应电路
设计键盘响应电路时,使用MC68HC908CR12单片机PORTD《PTD6和PTD7)端口的键盘中断功能(KBI)。根据实际情况,在MC68HC908SR12单片机的键盘中断使能寄存器KBIER中写入相应的值,写入“1”表示中断允许,写入“O”表示不能中断。键盘中断允许的端口,MC68HC908SR12单片机将对其内部上拉30kΩ的电阻,这样键盘响应电路的设计十分简洁,要注意的是应用软件中要增加键盘消抖动子程序,防止误操作。
5、状态显示电路
同样,状态显示电路的设计使用了MC68HC908SR12单片机PORT A(PTAO-PTA5)端口的LED直接驱动功能。编程时首先设置PORT A的工作状态,在LED控制寄存器LEDA中写入相应的值,写入“1”表示可直接驱动LED,写入“0”表示作为标准I/O端口。在充电的每个阶段均有状态显示。
3、软件设计
本智能快速充电器的软件设计思想是:各个功能组件实现模块化编程,软件流程采用中断工作方式。目的是使应用软件流程清晰,可读性强,易于功能调试以及产品的维护和升级。
本软件主要由初始化、预处理、快速充电和 涓流充电四个部分组成。
1.预处理
预处理阶段是进入快速充电前的准备工作。
程序初始化后,首先利用MC68HC 908SR12单片机的内部温度传感器检测环境温度。环境温度过低或过高时,均不能够对电池进行充电,否则将损伤电池。例如:锂离子电池( Li+ )的适宜充电温度范围在2.5℃~50℃之间。
然后,设置A/D转换参数和通道,检测电池的端电压。将检测数据同理论经验值比较,判断电池的类别以及是否连接正确。
2.快速充电
按预定的充电控制模块和算法设置MC68HC908CR12单片机PWM的控制寄存器PWMCR、时钟寄存器PWMCCR以及数据寄存器PWMDRO-PWMDR2,打开中断使能位,开始快速充电。
快速充电时,MC68HC908SR12单片机必须不断检测以下几项关键技术指标:电路是否出现断路、电池是否出现不均衡现象、电池是否达到规定的安全电压、电池是否温度过高、电池是否满足-△或△T/△t条件。
电池的端电压检测使用MC68HC908SR12单片机的片上10位高精度A/D模块,采用中断控制方式,这样可节省MC68HC908SR12单片机在A/D转换期间的等待时间。端电压检测的数据,通过充电算法计算电池的电压负增长-△V是否满足快速充电终止条件,时实修改C68HC908SR12单片机PWM的输出参数,控制充电电流的大小。
电池的温度检测在端电压检测之后进行。MC68HC908SR12单片机通过设置不同的地址编码(A1AO),访问相应的数字温度传感器LM92,读取温度数据,通过充电算法计算电池的温度变化率△T/△t是否满足快速充电终止条件,时实修改单片机PWM的输出参数,控制充电电流的大小。
为了防止电池被冲坏,在电池电压到达最高端电压Vmax或最高温度Tmax时应立刻停止充电,否则会损坏电池。
3.涓流充电
快速充电结束后,MC68HC908SR12单片机自动转入涓流充电模式,补偿电池因自放电而损失的电量,这样可使电池总处于充足电的状态。
结语
经过设计和调试,以MC68HC908SR12单片机为控制核心的智能快速充电器已能正常工作。由于SR12具有良好的性能价格比,将其特有的模拟电路模块、高精度A/D转换、I2C总线接口以及高速PWM等功能运用到充电控制中,有效使用了SR12的片内外功能,增加产品的智能化和实用性,节省了产品的开发时间和费用,降低了生产成本,同时也提高了产品的一致性和可靠性。
作者单位 浙江工大学
关键词:单片机 A/D转换 I2C总线 传感器 电磁干扰
一、概述
1、功能特性
·以MC68HC 908SR12芯片为控制核心:
·根据二次电池的充电特性,能自动识别镍镉电池、镍氢电池和锂离子电池,自动选择相应的算法和控制模块对其快速充电;
·采用最高温度、Tmax最高端电压Vmax、电压负增长-△V、最长充电时间t ma x、温度变化率△T/△t、电压负增长-△V等充电终止法:
·能对1-4节的镍镉电池,镍氢电池单独或同时充电;
·能对1-2节的锂离子电池单独或同时充电;
·较高的充电速率,每O.1Ah的充电时间小于10min,
·对镍镉电池,镍氢电池等有记忆效应的电池采用脉冲充电模式,以减小记忆效应;
·对锂离子电池采用恒流转恒压的充电模式:
·采用集成度较高的I2C接口的数字温度传感器LM92,实时检测电池温度;
·设有三保护措施:过充电保护,过放电保护和过电流保护:
·设有电池保护装置,杜绝短路、开路和反接。
·当快速充电结束后自动转入涓流充电模式。
2、系统
其核心是一块MC68HC908SR1芯片,主要电路有电源电路、恒流恒压电路、温度检测电路、键盘电路及显示四部分电路。
二、硬件设计
1、电源电路
充电器的供电设备使用开关电源。
开关电源采用脉冲调制方式PWM和MOSFET、BTS、IGBT等电子器件进行设计。该电源具有调压、限流、过热保护等功能。同线性电源相比其输入电压范围宽、体积小、重量轻、效率高。但其缺点是有脉冲扰动干扰,设计电路板时采用同主控板隔离和添加屏蔽罩等措施,来抑制干扰。
2、恒流恒压电路
智能充电器的关键部分是恒流恒压电路。该电路由SR12单片机片内模拟电路模块和片外的、滤波电感、滤波电容、MOSFET开关管、肖特基二极管等器件组成。模拟电路模块是SR12的特有部件,它由输入多路开关、两组可程控放大器、片内温度传感器、电流检测电路等组成。可程控放大器总放大倍数为1-256。放大器的输入可选择为两路模拟输入脚(ATDO、ATD1)、片内温度传感器、模拟地输入(V SSAM)。ATDO和V SSAM间可接一个电流检测电阻,用于测量外部电流,它还连接至电流检测电路,可在电流超过指定值时产生中断并输出信号。
在充电开始前的预处理阶段,根据不同的电池,软件自动匹配充电算法,将通道选择控制字写入SR12单片机的AMCR寄存器中,将两级可程控运算放大器的增益值写入AMGCR寄存器中。充电开始后,软件定时采集采样电阻Rsense上的电压值,经过计算,设置SR12单片机PWM的输出参数。同时,电流检测电路实时检测充电电流,在电流超过指定值时产生中断并将 SR12单片机PTCO/PWMO/CD端口置为低电平,及时关断充电电流,实现恒流恒压的充电控制。
3、温度检测电路
本设计选用集成电路温度传感器LM92检测电池温度。同时,利用SR12 单片机的内部温度传感器概略监测环境温度,其测温范围-20℃-70℃。LM92是美国国家半导体公司出品的单片高精度数字温度传感器。其内部的12位温度模数转换器,可将被感应温度的模拟量转换为0.0625℃量化间隔的数字量,常温下精度可达±0.33℃,并可与用户设置的温度点进行比较。其片内寄存器可以设置高/低的温度窗口门限及临界温度告警门限,当温度偏离设置门限时,漏级开路中断INT及临界温度告警T_CRIT_A输出有效信号。通过I2C总线接口可对该传感器的内部寄存器进行读/写操作,最多可允许4片LM92挂接在同一条串行总线上。
MC68HC908SR12单片机具有I2C接口控制模块,使用通道0(SDAO和SCLO),可十分方便地同温度传感器LM92连接。LM92采用I2C串行总线和数据传输协议实现同MC68HCg08SR12单片机的数据传输。在数据传输的过程中LM92为从器件,通过数据输入、输出线SDA以及时钟信号线SCL与总线相连。当SCL保持高电平时,SDA从高电平到低电平的跳变作为数据传输的开始信号,随后传送LM92的地址信息和读/写控制位。
4、键盘响应电路
设计键盘响应电路时,使用MC68HC908CR12单片机PORTD《PTD6和PTD7)端口的键盘中断功能(KBI)。根据实际情况,在MC68HC908SR12单片机的键盘中断使能寄存器KBIER中写入相应的值,写入“1”表示中断允许,写入“O”表示不能中断。键盘中断允许的端口,MC68HC908SR12单片机将对其内部上拉30kΩ的电阻,这样键盘响应电路的设计十分简洁,要注意的是应用软件中要增加键盘消抖动子程序,防止误操作。
5、状态显示电路
同样,状态显示电路的设计使用了MC68HC908SR12单片机PORT A(PTAO-PTA5)端口的LED直接驱动功能。编程时首先设置PORT A的工作状态,在LED控制寄存器LEDA中写入相应的值,写入“1”表示可直接驱动LED,写入“0”表示作为标准I/O端口。在充电的每个阶段均有状态显示。
3、软件设计
本智能快速充电器的软件设计思想是:各个功能组件实现模块化编程,软件流程采用中断工作方式。目的是使应用软件流程清晰,可读性强,易于功能调试以及产品的维护和升级。
本软件主要由初始化、预处理、快速充电和 涓流充电四个部分组成。
1.预处理
预处理阶段是进入快速充电前的准备工作。
程序初始化后,首先利用MC68HC 908SR12单片机的内部温度传感器检测环境温度。环境温度过低或过高时,均不能够对电池进行充电,否则将损伤电池。例如:锂离子电池( Li+ )的适宜充电温度范围在2.5℃~50℃之间。
然后,设置A/D转换参数和通道,检测电池的端电压。将检测数据同理论经验值比较,判断电池的类别以及是否连接正确。
2.快速充电
按预定的充电控制模块和算法设置MC68HC908CR12单片机PWM的控制寄存器PWMCR、时钟寄存器PWMCCR以及数据寄存器PWMDRO-PWMDR2,打开中断使能位,开始快速充电。
快速充电时,MC68HC908SR12单片机必须不断检测以下几项关键技术指标:电路是否出现断路、电池是否出现不均衡现象、电池是否达到规定的安全电压、电池是否温度过高、电池是否满足-△或△T/△t条件。
电池的端电压检测使用MC68HC908SR12单片机的片上10位高精度A/D模块,采用中断控制方式,这样可节省MC68HC908SR12单片机在A/D转换期间的等待时间。端电压检测的数据,通过充电算法计算电池的电压负增长-△V是否满足快速充电终止条件,时实修改C68HC908SR12单片机PWM的输出参数,控制充电电流的大小。
电池的温度检测在端电压检测之后进行。MC68HC908SR12单片机通过设置不同的地址编码(A1AO),访问相应的数字温度传感器LM92,读取温度数据,通过充电算法计算电池的温度变化率△T/△t是否满足快速充电终止条件,时实修改单片机PWM的输出参数,控制充电电流的大小。
为了防止电池被冲坏,在电池电压到达最高端电压Vmax或最高温度Tmax时应立刻停止充电,否则会损坏电池。
3.涓流充电
快速充电结束后,MC68HC908SR12单片机自动转入涓流充电模式,补偿电池因自放电而损失的电量,这样可使电池总处于充足电的状态。
结语
经过设计和调试,以MC68HC908SR12单片机为控制核心的智能快速充电器已能正常工作。由于SR12具有良好的性能价格比,将其特有的模拟电路模块、高精度A/D转换、I2C总线接口以及高速PWM等功能运用到充电控制中,有效使用了SR12的片内外功能,增加产品的智能化和实用性,节省了产品的开发时间和费用,降低了生产成本,同时也提高了产品的一致性和可靠性。
作者单位 浙江工大学