2015年全国大学生电子设计竞赛A题论文

发布时间:2018-06-26 14:19:25   来源:文档文库   
字号:

2015年全国大学生电子设计竞赛

双向DC-DC变换器(A题)

2015815



摘要

本系统以STM32单片机为主控制器,以非隔离式Buck-Boost型电路为核心,设计并制作用于电池储能装置的双向DC-DC变换器,实现可按键设定亦可自动转换电池充放电模式的功能。系统由STM32内部寄存器及扩展口功能,加上按键模块、集成运放模块、LCD液晶显示模块、双向DC-DC变换电路组成。提高了电源效率,有效的保护了电路,经测试,系统能够实现基础部分所有要求。

关键词:DC-DC变换器;高效率;STM32;电流控制精度

Bbstract

This system is given priority to with STM32 MCU controller, with the isolation type Buck - Boost circuit as the core, the design and construction of double DC - DC converter for battery energy storage device, implement key setting can be automatically switched to the battery charging and discharging mode function.System of STM32 internal registers and extension mouth function, and key module, integrated operational amplifier module, LCD liquid crystal display module, two-way DC - DC conversion circuit.Improve the efficiency of the power, the effective protection circuit, after the test, the system can realize all basic requirements.

Keywords:DC-DCconverter;Highefficiency;STM32;Current control accuracy

一、系统设计 1

1.1 设计思路 1

1.2 方案论证与选择 1

1.2.1DC/DC的论证与选择 1

1.2.2电路过流保护方式的论证与选择 1

1.2.3控制系统的论证与选择 1

二、系统理论分析与计算 2

2.1双向DC/DC输入输出计算 2

2.2 电流精度及变化率计算 2

电路设计 3

3.1电路的设计 3

四、程序设计 3

4.1程序功能描述 3

4.2程序流程图 3

五、系统测试 4

5.1 测试条件与仪器 4

5.2 测试结果及分析 4

5.2.1电流误差及变化率测试 4

5.2.2充电电流变化率测试 4

5.2.3变换器的效率测试 4

5.3测试分析与结论 5

六、参考文献 5

附录一 电路原理图 6

附录二 主要程序 6



一、系统设计

1.1 设计思路

STM32单片机为控制器,通过键盘设置电池充放电功能模式,该模式采用STM32内部312bit18通道AD快速采集DC/DC模块双向输入、输出值,并通过STM32内部D/A输出及集成运放模块控制DC/DC 模块实现恒流恒压,从而能够实现对电池组的充放电,电流步进值精准可调,变换效率大大提高。

1.2 方案论证与选择

1.2.1DC/DC的论证与选择

方案一:采用传统升降压拓扑结构

LM2596输出电压1.2V~37V可调,输出最高电流可达3A,输出线性好,负载可调,系统效率高,可以用仅80μA的待机电流,实现外部断电,具有过流保护功能;XL6009是一款4A开关电流的高性能升压(BOOST)模块,输入电压3V~32V输出电压5V~35V,经初步调试后完全可实现题目的基本要求。

方案二:采用LM317稳压可调电路

LM17是可调节3端正电压稳压器,在输出电压范围1.2伏到37伏时能够提供超 1.5安的电流,此稳压器非常易于使用稳压电源输出的有载电压和空载电压差别较大;LM2577是一款具有过流保护、低电压锁定和过热保护功能的升压模块,输入电压范围为3.5V~40V 输出最高电流达3A

综合以上两种方案,选择方案一。

1.2.2电路过流保护方式的论证与选择

方案一:软件控制方法。

通过采样电阻两端的电压计算出Io值,经A/D转换模块将电流反馈给单片机,当检测电流值超过预先设置值时,通过D/ALM358集成运放使输出电流减少。

方案二:光耦驱动法。

通过采样电阻两端的电压计算出Io值,经A/D转换模块将电流反馈给单片机,当检测电流值超过预先设置值时,通过光耦驱动继电器电路,从而迅速使输出电流断开,有效保护电路。

综合以上三种方案,选择方案一。

1.2.3控制系统的论证与选择

方案一:以STM32F130VCT6单片机作为主控制系统

电压、电流的采集是整个系统的核心部分,关系到整个系统的测量精度,系统否到达额定的指标。本电源电压输出能力为030V,电流输出能力为0-3A,电压最小步进值为10mV,电流最小步进值为1mA。满足此测量要求时,需要AD精度大于30000/10=3000,故AD的采样位数应大于12bit。为降低成本,系统在单片机选型时采用内置312bit18通道ADSTM32F130VCT6单片机。

方案二:以STC12C5A60S2单片机作为主控制系统

STC12C5A60S2STC生产的单时钟/机器周期(1T)的单片机,是高速、低功耗、

超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2PWM8路高速10A/D换,针对电机控制,强干扰场合。但相对STM32单片机来说,仍需加D/A转换电路,且采集相对较慢。

综合考虑采用方案一。

二、系统理论分析与计算

2.1双向DC/DC输入输出计算

1 LM2596输出电压值计算:

条件:VOUT为可调节的输出电压,VINmax)为最大直流输入电压,ILOADmax)为最大负载电流,F=开关频率 (为固定值150KHz)

1

21XL6009输出电压值计算:

条件:VOUT为可调节的输出电压,VINmax)为最大直流输入电压,ILOADmax)为最大负载电流,F=开关频率 (为固定值150KHz

2

2.2 电流精度及变化率计算

电流控制精度定义为其中为实际电流,为设定值。STM32单片机内置12ADC12DAC,基准电压源为内部3.3V,电压精度可以达到0.81mv,远远小于0.4V,同时,AD采集偏差0.81mv最大会导致2.48mA电流误差,而题目基本要求电流相对误差绝对值不大于2%,即允许电流误差最小为0.5A*2%=4mA,满足题目对电流精度及变化率的要求。

3、电路设计

综合上述方案的论证与选择本系统以STM32单片机为主控制器,以非隔离式Buck-Boost型电路为核心,设计并制作用于电池储能装置的双向DC-DC变换器,实现可按键设定亦可自动转换电池充放电模式的功能。系统由STM32内部寄存器及扩展口功能,加上按键模块、集成运放模块、LCD液晶显示模块、双向DC-DC变换电路组成。

3.1电路的设计

1)系统总体框图

3 系统总体框图

2 双向DC-DC变换电路原理图(见附录1A

3 集成运放模块电路原理图(见附录1B

四、程序设计

4.1程序功能描述

根据题目要求软件部分主要实现键盘的设置和显示。

1)键盘实现功能:设置电流、电压值以及设置充放电模式。

2)显示部分:显示电流、电压值。

4.2程序流程图

(见附录2A

4.3主要主程序

(见附录2B

五、系统测试

5.1 测试条件与仪器

1)测试条件:检查多次,仿真电路和硬件电路与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。

2)测试仪器:高精度的数字毫伏表,模拟示波器,数字示波器,数字万用表,指针式万用表。

5.2 测试结果及分析

5.2.1电流误差及变化率测试

1

U2=30V 条件下1~2A步进可调(A

实际电流值

设置电流值

显示电流值

实际电流值与设置电流值的误差

实际电流值与设置电流值的误差

1.0

1.006

1.0

1.005

5.12%

6.8

1.1

1.104

1.1

1.105

4.6%

7.0

1.2

1.198

1.2

1.201

5.2

4.6

1.3

1.302

1.3

1.298

6.2

5.2

1.4

1.401

1.4

1.400

4.2

6.2

1.5

1.501

1.5

1.488

5.3

6.3

1.6

1.604

1.6

1.612

5.5

7.1

1.7

1.701

1.7

1.711

6.2

3.6

1.8

1.802

1.8

1.891

7.2

4.5

1.9

1.899

1.9

1.902

8.2

5.2

2.0

2.001

2.0

2.002

6.2

6.2

测试结果分析:U2=30V条件下,实现对电池恒流充电。充电电流I11~2A范围内步进值不大于0.1A,电流控制精度不低于5%

5.2.2充电电流变化率测试

2

=2A 24V~36V条件下

V

充电电流值A

充电电流变化率

24.0

2.002

2.002%

30.0

1.960

1.982%

36.0

1.856

2.112%

5.2.3变换器的效率测试

设定 I1=2A,在 U2=30V 条件下,DC-DC 变换器效率?1=?2=,其中,则变换器的效率?1为:

第一次测试:?1=85%

第二次测试:?1=86%

第三次测试:?1=84%

(4)过充保护功能测试:

3

I1=2A,阈值 U1th=24± 0.5V

电池充电状态

1

23.82

停止

2

23.88

停止

3

24.02

停止

4

24.05

停止

5

23.87

停止

测试结果分析:设定I1=2A,当U1超过阈值 U1th=24±0.5V时,停止充电。

5.3测试分析与结论

通过一系列功能测试,本系统以STM32单片机为主控制器,以非隔离式Buck-Boost型电路为核心,设计并制作用于电池储能装置的双向DC-DC变换器,实现可按键设定亦可自动转换电池充放电模式的功能。经测试,系统能够实现基础部分所有要求。以从而提高电源效率达到85%以上,手动调节和自动调节时能够实现基本要求的5%,有效的保护了电路,经测试,系统除了基本要求2%的电流精度要求最大可以做到接近外,其他基本要求和发挥部分均能部分实现。

六、参考文献

[1] 张乃国电子电源技术与应用[M].北京:机械工业出版社,2007.4.

[2] 刘胜利现代高频开关电源实用技术[M].北京:电子工业出版社,2001.

[3] [] 玛尼克塔拉(Maniktala S.)著;王志强,郑俊杰等译.开关电源设计与优化[M].电子工业出版社,2006.12.01

[4] 赵同贺.开关电源设计技术与应用实例/电能变换与应用丛书[M].人民邮电出版社,2007.

[5]郭业才,黄友锐.模拟电子技术第一版[M].北京:清华大学出版社,2011.

[6]郭天祥.新概念51C语言教程[M].北京:电子工业出版社,2014.

附录一 电路原理图

附录二 主要程序

B

主要主程序:

int main(void)

{

u8 key;

u16 adc1;

u16 adc2;

u16 adc3;

u16 dac1;

u16 dac2;

u16 dacval1=288; //DAC1 PA4 初始输出0.23V

u16 dacval2=1; //DAC2 PA5 初始输出0V

float xianshi_adc1;

SystemInit();

delay_init();

LED_Init(); //led 初始化

LCD_init(); //5110 LCD初始化

TIM4_Int_Init();//定时器中断4 初始化

TIM3_Int_Init();//定时器中断3

LCD_draw_bmp_pixel(0,0,Snut_bmp,84,48);// 显示队伍图片

delay_ms(1500);

delay_ms(1500);

LCD_clear();//清屏

LCD_Write_String(0,2," 系统初始化中 ");

Adc_Init(); // 初始化ADC

Dac1_Init(); //初始化DAC

KeyBoard_Init();//初始化矩阵键盘

DAC_SetChannel1Data(DAC_Align_12b_R, 1); //DAC1 初始

DAC_SetChannel2Data(DAC_Align_12b_R, 1); //DAC2 初始

LCD_clear();

delay_ms(1000);

LCD_Write_String(0,0,"KEY:");

LCD_Write_String(0,1,"PA0: . v");

LCD_Write_String(0,2,"PA1: . v");

LCD_Write_String(0,3,"PA3: . v");

LCD_Write_String(0,4,"A4 set: ..");

LCD_Write_String(0,5,"A5 set: ..");

EN_dianliu=1; //PA6

EN_dianya=0; //PA7

while(1)

{

if(TIM4_flag==1) //定时器4中断标志位

{

key=Read_KeyValue(); //读取矩阵键盘

LCD_Write_Num(24,0,key,2);

if(key) //键盘读取操作

{

switch(key)

{

case 1:

dacval1+=13; //DAC1+0.01V

break;

case 2:

dacval1-=13; //DAC1-0.01V

break;

case 3:

dacval2+=12; //DAC2+

break;

case 4:

dacval2-=12; //DAC2-

break;

case 5:

dacval1+=125; //DAC1+

break;

case 6:

dacval1-=125; //DAC1-

break;

case 7:

dacval2+=125; //DAC2+

break;

case 8:

dacval2-=125; //DAC2-

Break

case 13:

break;

}

本文来源:https://www.2haoxitong.net/k/doc/63e29d7349649b6649d7470f.html

《2015年全国大学生电子设计竞赛A题论文.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式