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

2020-04-14 03:10

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

三、电路设计

综合上述方案的论证与选择本系统以STM32单片机为主控制器,以非隔离式

Buck-Boost型电路为核心,设计并制作用于电池储能装置的双向DC-DC变换器,实现可按键设定亦可自动转换电池充放电模式的功能。系统由STM32内部寄存器及扩展口功能,加上按键模块、集成运放模块、LCD液晶显示模块、双向DC-DC变换电路组成。 3.1电路的设计 (1)系统总体框图

图3 系统总体框图

(2) 双向DC-DC变换电路原理图(见附录1图A) (3) 集成运放模块电路原理图(见附录1图B)

四、程序设计

4.1程序功能描述

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

(1)键盘实现功能:设置电流、电压值以及设置充放电模式。 (2)显示部分:显示电流、电压值。 4.2程序流程图 (见附录2图A) 4.3主要主程序 (见附录2图B)

3

五、系统测试

5.1 测试条件与仪器

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

(2)测试仪器:高精度的数字毫伏表,模拟示波器,数字示波器,数字万用表,指针式万用表。 5.2 测试结果及分析

5.2.1电流误差及变化率测试

表1

U2=30V 条件实际电流值实际电流值下1~2A步进实际电流设置电流值显示电流值I1与设置电I1与设置电I10 可调(A) 值I1 流值I10的误流值I11的误I11 差 差 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条件下,实现对电池恒流充电。充电电流I1在1~2A范围内步进值不大于0.1A,电流控制精度不低于5%。 5.2.2充电电流变化率测试

表2

在I1=2A 、24V~36V条件下 (V) 24.0 30.0 36.0 5.2.3变换器的效率测试 充电电流值I1(A) 2.002 1.960 1.856 充电电流变化率SI1 2.002% 1.982% 2.112% P2?100%,P1设定 I1=2A,在 U2=30V 条件下,DC-DC 变换器效率?1=

4

?2=

P2?100%,其中P1?U1?I1 ,P2?U2?I2 ,则变换器的效率?1为: P1第一次测试:?1=85% 第二次测试:?1=86% 第三次测试:?1=84%

(4)过充保护功能测试: I1=2A,阈值 U1th=24± 0.5V 表3 U1 电池充电状态 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.

5

附录一 电路原理图

附录二 主要程序

图B

6

主要主程序:

int main(void) {

LCD_Write_String(0,0,\

LCD_Write_String(0,1,\ . v\ LCD_Write_String(0,2,\ . v\ LCD_Write_String(0,3,\ . v\

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,2,\系统初始化中 \Adc_Init(); Dac1_Init();

// 初始化ADC //初始化DAC

LCD_draw_bmp_pixel(0,0,Snut_bmp,84,48);// 显示队伍图片 delay_ms(1500); delay_ms(1500); LCD_clear();//清屏

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

SystemInit(); delay_init(); LED_Init(); LCD_init();

//led 初始化

//5110 LCD初始化

u8 key; u16 adc1; u16 adc2; u16 adc3; u16 dac1; u16 dac2;

u16 dacval1=288; //DAC1 PA4 初始输出0.23V u16 dacval2=1; float xianshi_adc1;

//DAC2 PA5 初始输出0V

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

7

} }

LCD_Write_String(0,4,\ ..\LCD_Write_String(0,5,\ ..\ {

{

switch(key) {

case 1:

dacval1+=13; //DAC1+0.01V break; case 2: dacval1-=13; break; case 3: dacval2+=12; break; case 4: dacval2-=12; break; case 5:

dacval1+=125; break; case 6:

dacval1-=125; break; case 7:

dacval2+=125; break; case 8:

dacval2-=125; Break; case 13: break;

//DAC2-

//DAC2+

//DAC1-

//DAC1+

//DAC2-

//DAC2+

//DAC1-0.01V

key=Read_KeyValue(); //读取矩阵键盘 LCD_Write_Num(24,0,key,2); if(TIM4_flag==1) //定时器4中断标志位 {

EN_dianliu=1; //PA6 EN_dianya=0; //PA7

while(1)

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

8


2015年全国大学生电子设计竞赛A题论文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:化工原理试题库答案(上册,总)已修改

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: