ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:78.44KB ,
资源ID:10956476      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10956476.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(开关电源模块并联供电系统.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

开关电源模块并联供电系统.docx

1、开关电源模块并联供电系统开关电源模块并联供电系统摘要本系统以STC12C5A48AD为核心,通过AD采样和DA控制,调节运放,从而改变恒流大小,设计并制作了两路可均流的DC/DC 开关电源,并联构成供电系统。当负载电阻至额定输出功率工作状态,供电系统的直流输出电压UO=8.00.4V。IO =1.0A 且按I1:I2=1:1 模式自动分配电流,两个模块的输出电流的相对误差绝对值分别为3.4%和3.8%。当两个模块输出电流之和IO =4.0A 且I1:I2=1:1 模式自动分配时,误差是1.9%。系统的效率在60%以上,最大效率可以达到72%。此供电系统还可以将两个模块电流比例及大小实时显示出来

2、,具有过流保护功能,阀值电流可在程序里更改。关键词:STC12C5A48AD 均流 过流保护一、 方案比较与选择1.1、整体方案选择方案一:采用TI 公司的脉宽调制控制器TL494CN 作为DC/DC拓扑的PWM 控制芯片。TL494 的最高工作频率300KHz,内有两个误差信号比较器,能同时实现电压模式和电流模式控制,方便做过流保护;但由于MOS 管驱动需外加上管驱动芯片IR2110,而IR2110会有0.2W左右的功耗,会消耗掉1个多百分点的效率。方案二:采用模数电搭配,搭建恒流稳压开关电源,用回路自振荡形成PWM波,通过STC12C5A48AD单片机通过AD采样,控制DA输出电压,自主调

3、节每个DC/DC模块的电流大小,使整个供电系统的反应速度大大提高,而且供电效率高,系统原材料较便宜。故选用方案二作为本供电系统的实现方式。1.2、提高效率的方案选择方案一:用集成三端稳压器来供电。由于UIn端输出的电压比较高,变化范围大,而单片机系统只需5V供电,若采用7812,7805两级降压来供电,会大大降低效率,从而降低供电系统。方案二:采用高效率的DC-DC芯片34063,片内包含有温度补偿带隙基准源,一个占空比周期控制振荡器驱动器和大电流输出开关,能输出1.5A的开关电流,而且,它能使用最少的外接元件构成开关降压式变换器,输入允许范围大,效率比高,驱动能力强。考虑效率的要求,本设计采

4、用了方案二。总体方案确定:经过以上比较我们确定总体设计方案框图如下图1-4:图1-4、系统整体方案框图二、理论分析与计算2.1、DC/DC 变换器稳压方法本系统选择串联开关电源形式来降压,选用二极管,电感及电容构成基本拓扑用MOS管NPN沟道及两个10K的电阻构建PWM控制端口,用基本运放采样,设置基本参数通过计算分析得采样电压,(I为该路的恒流),取0.1欧姆,是为了降低功耗,提高供电效率。举例:若选用1欧姆的电阻,而模块电流为2A,则功耗为4W,功耗达25%,不可取。下图为降压降波部分,选择串联开关模式。图2-12.2、电流电压检测设计 本系统采用AD采样电路,当AD采样电路采集的电流信号

5、达到一定数值时,单片机根据采样信号大小控制DA转换器件输出一定大小的电流,然后电路通过自身反馈,改变另一个DCDC模块的输出电流。来达到控制电路电流比例的大小。当AD采样电路采集到的信号超过一定数值时,单片机则根据信号控制DA使DCDC模块的输出电流恒定。2.3、均流方法并联的两个模块采用相同的DC-DC主回路拓扑,即方案比较选择中提到的串联开关电源,使电压信号并联进入,只要控制模块软件部分参数设置相同,而外部的硬件部分,两模块的元器件参数也完全相同,即达到均流的效果。具体则是主电路通过电压反馈稳定输出电压,从电路通过运放检测主从两路的电压差控制输出电压,使得两路压差为零,从而达到均流的目的。

6、因为采用的模块对称,所以误差较小,而且加入采样电阻后,影响也不会很大。 图2-2 均流原理图2.4、过流保护使用STC12C5A48AD单片机实时监测电流。因为ADC采样的电压与模块的恒流成正相关,通过计算判断比较,用AD定时采样两模块电压,并把它们的和与预先设定的电压比较来判断过流。当连续两次检测到电流过大时,关断使系统不输出电流,5秒延时后,重新启用原始状态,再次判断。 三、电路设计3.1、硬件核心电路如下:(模块电路见附录一)图3-1 DC/DC模块电路原理: 如图所示,当输入电压经过电容滤波后,稳定输出,当输出电压变化时,若输出电压升高,经0.1欧姆电阻采样电压然后由放大器进行,放大器

7、输出正电压,则反馈到稳压稳流放大器的负输入端,则放大器输出为0,开关三级管基极电压降低,导致其关闭,进而MOSFET管也关闭,经电容电感放电后,输出电压降低,使得0.1欧姆电阻采样电压又降低,使得放大器输出为0,则又经下一级放大器后,放大器输出正电压,是开关三级管又导通,则MOSFET管导通,从而使得输出电压又上升,如此循环产生相于与PWM的波形,使得输出电压自行稳定。对于输出电流的控制,则需要在输出端加电流采样电路,当输出电流上升时,若放大器的基准电压小于输入采集电压,则放大器输出为0,控制电流的三极管关断,则前一级三极管也断开,导致MOSFET管也断开,输出电压减小,则采集电流也减小,当放

8、大器的基准电压大于输入采集电压时,则放大器输出为高电平,导致三极管导通,开关三极管导通,MOSFET管也导通。当AD采集电流达到一定数值,可通过单片机控制DA,输出电压使输出电流稳定在一数值。四、系统调试调试过程共分三部分:硬件调试,软件调试,软硬件联调。 4.1 硬件调试:由于该系统的闭环控制主要由三极管和放大器反馈电路自动控制输出电压,单片机主要起输出参考电压,显示等一些辅助作用,再者根据理论值进行元器件的选择由于精度和干扰的影响,往往得到的结果和理论分析值又有一定的偏差,所以硬件调试难度很大。此题目对A/D 采样回路要求都非常高,其稳定性、精度直接影响最终结果。我们采取了一些抗干扰措施。

9、例如引线尽量短,减少交叉,每个芯片的电源与地之间都接有滤波电路。实践证明,这些措施对消除某些引脚上的“毛刺”及高频噪声起到了很好的效果。 4.2 软件调试:本系统的软件程序完全由KEIL-C编写,在调试过程中采取的是自上至下的调试方法,单独调试好每一个模块,然后在联结成一个完整的系统调试。 4.3 软硬联调:由于本系统的软硬件联系不是很紧密,一般是软件D/A输出后就能直接和硬件相联进行工作,因此在软硬件通调的情况下,系统的软硬件联调的难度有点大。 五、指标测试及分析(具体数据见附录二)5.1、测试仪器 TDS1002数字存储示波器、DT9207数字万用表、三位半数字万用表,PCHW-WYJ-2

10、0A30V直流稳压电源。5.2、输出电压的测量 调节负载电阻至额定状态,测出电压。 符合题目要求。5.3、系统效率的测量计算及分析先测出系统的输入电压UIN,输入电流IIN,输出电压U0,输出电流I0, 由功率公式,及计算得(具体见附表2-1,2-2):供电系统的供电效率均大于60%,符合题目要求。5.4、每个模块的电流及总电流IO及误差分析5. 4. 1、保持输出电压UO=8.00.4V,使两个模块输出电流之和IO =1.0A 且按I1:I2=1:1 模式自动分配电流时,见附表2-3: 由表格数据分析可得,每一模块的电流相对误差都小于5%,符合题目要求。 5.4.2、保持输出电压UO=8.0

11、0.4V,使两个模块输出电流之和IO =1.5A 且按I1:I2= 1:2 模式自动分配电流时,见表2-4: 由附表分析: 误差(测量值C-理论值L)/理论值 可得,每一模块的电流相对误差都小于5%,符合题目要求。5.4.3、保持输出电压UO=8.00.4V,使负载电流IO 在1.53.5A之间变化时,两个模块的输出电流可在(0.52.0)范围内按指定的比例自动,任取四组测量(见附表)及误差分析,与5.4.2同理: 通过以上分析,能按照自定的比例通过调节完成要求,但误差较大,有待进一步改进。5.5.5、保护阈值电流 当测得总电流I0=4.5A时,供电系统复位。5.5.6、系统对题目的完成情况如

12、下表表5-1 系统对题目的完成情况对照表基本部分要求实现输出电压UO=8.00.4V输出电压UO=7.98VIO =1.0A 且按I1:I2=1:1输出电流的相对误差绝对值不大于5%符合要求IO =1.5A 且按I1:I2=1:2输出电流的相对误差绝对值不大于5%实际测得I1=0.482A,I2=1.082A符合要求供电系统的效率不低于60%实测电路效率为72%发挥部分按指定的比例自动分配绝对值不大于2%。可自动调节,实际测得为1.98%IO =4.0A 且按I1:I2=1:1绝对值不大于2%效果不稳定保护阈值电流为4.5A偏差0.18A六、 结论本设计很好的满足了题目各个要求,也响应发挥部分

13、,可以在(1)中自主切换电流比例档位,还能额外的显示出当前电流比例和总电流大小;能高效率、低成本、简单、方便地实现并联系统供电。不过,其实本设计还有很大的提升空间,但由于我们的动手能力以及理论水平有限,没能很好的达到,我们将继续努力争取更大的进步。参考文献:【1】 张奇、朱宁西,单片机应用系统设计技术 ,电子工业出版社,2009【2】 童诗白 ,模拟电子技术基础 第三版, 高等教育出版社,2001【3】 吴少军、刘光斌,单片机实用低功耗设计,人民邮电出版社 2004【4】 黄智伟 ,全国大学生电子设计竞赛训练教程,电子工业出版式社,2005【5】 曲学基等 ,新编低频开关稳压电源 ,电子工业出

14、版社 2005附录一:模块电路图附图1-1、24V转5V单片机供电电路附录二:要求指标的测量情况附表2-1 输入输出电压电流输入电压UIN/V输入电流IIN/A输出电压U0/V输出电流I0/A第一次24.0 0.54 7.981.12第二次24.01.107.982.05第三次24.01.627.983.31附表2-2 输入输出功率及效率输入功率/W输出功率/W供电效率是否符合要求第一次12.968.9469%是第二次26.416.3662%是第三次38.8824.8264%是附表2-3 IO =1.0A时电流比例的精确度I1/AI2/AIO/A是否符合要求理论值0.50.51是测量值0.50

15、404981.003每一模块相对误差0.040.020.002附表2-4 IO =1.5A时电流比例的精确度I1/AI2/AIO/A是否符合要求理论值0.51.01.5是测量值0.4910.9981.52每一模块相误差0.010.020.02附表2-5 发挥部分电流指定比例可调IO/A比例I1/AI2/A第一次1.51:20.5021.0第二次1.52:11.010.499第三次21:1101.0第四次2.51:42.010.05附录二:核心源程序#include #include intrins.h#define uchar unsigned char #define uint unsign

16、ed int#define ADC_POWER 0x80#define ADC_FLAG 0x10#define ADC_START 0x08#define ADC_SPEEDLL 0x00#define ADC_SPEEDL 0x20#define ADC_SPEEDH 0x40#define ADC_SPEEDHH 0x60#define FOSC 12000000L#define T1MS (65535-FOSC/12/200) /20ms#define IN_0_5A #define IN_1A#define IN_1_5A#define IN_2A #define IN_2_25A

17、#define OUT_0_5A 25#define OUT_1A 35#define OUT_1_5A 42#define OUT_2A 47#define OUT_2_25A 48#define OUT_1_8A 46#define I2G_0_5A #define I2G_1A#define I2G_1_5A#define I2G_2A #define I2G_2_25A typedef unsigned char BYTE;typedef unsigned int WORD;#define DAC_data P3/sbit e=P25;/sbit rs=P27;/sbit rw=P26

18、;sbit e=P27;sbit rs=P26;sbit rw=P25;/sbit LED = P21;sbit KEY1 = P24;sbit KEY2 = P23;sbit KEY3 = P22;bdata uchar flag;sbit KEY1_FLAG =flag0;sbit KEY2_FLAG =flag1;sbit KEY3_FLAG =flag2;sbit STATUS_FLAG = flag3;sbit IN1 = flag4;sbit IN2 = flag5;uchar wolf = 0;uchar por;/BYTE ch =0;void adc_isr()interru

19、pt 5 using 1 ADC_CONTR &=!ADC_FLAG; /ADC_CONTR=ch|ADC_POWER|ADC_SPEEDLL|ADC_START;void tm0_isr() interrupt 1 using 1 static abc; TL0 = T1MS; TH0 = T1MS8; abc+; if(abc=50) abc = 0;/ LED = LED; void tm0_init() TMOD =0x01; TL0 = T1MS; TH0 = T1MS8; TR0 = 1; ET0 = 1; void Delay(WORD n) WORD x; while(n-)

20、x =5000; while(x-); void InitADC() P1ASF |= 0x03; /两路AD ADC_RES =0; / EADC = 1; / Delay(2);void delay_50us(uint t) uint j; for(;t0;t-) for(j=19;j0;j-);void write_com(uchar com) rs=0; rw=0; e=0; P0=com; delay_50us(10); e=1; delay_50us(20); e=0;void write_dat(uchar dat) e=0; rs=1; rw=0; P0=dat; delay_

21、50us(10); e=1; delay_50us(20); e=0;void LCD_string(uchar y,uchar x,uchar *pointer) if(y=0) write_com(0x80+x); if(y=1) write_com(0xc0+x); while(*pointer)!=0x00) write_dat(*pointer); pointer+; void lcd_init(void) delay_50us(300); write_com(0x38); delay_50us(100); write_com(0x38); delay_50us(100); writ

22、e_com(0x38); write_com(0x38); write_com(0x08); write_com(0x01); write_com(0x06); write_com(0x0c);void key_scan() if(KEY3=0) /状态改变 delay_50us(200); if(!KEY3) while(!KEY3); STATUS_FLAG = STATUS_FLAG; if(STATUS_FLAG=0) LCD_string(0,10,S:auto); else LCD_string(0,10,S:hand); delay_50us(200); while(!KEY3)

23、; if(KEY2=0) delay_50us(200); if(!KEY2) while(!KEY2); por-; if(por=4) por = 20; write_com(0xcb); write_dat(0x30+por/10); write_com(0xcd); write_dat(0x30+por%10); delay_50us(200); while(!KEY2); if(KEY1=0) delay_50us(200); if(!KEY1) while(!KEY1); por+; if(por=21) por = 5; write_com(0xcb); write_dat(0x

24、30+por/10); write_com(0xcd); write_dat(0x30+por%10); delay_50us(200); while(!KEY1); void main()uchar ADC_BARK; CLK_DIV =0x02; /分频时钟 lcd_init(); InitADC(); / tm0_init(); EA = 1; flag = 0; /CS=0; /DAC0832片选 IN1 = 0; por = 5; LCD_string(0,10,S:auto); while(1) while(STATUS_FLAG=0) /auto DAC_data = OUT_2

25、A ; Delay(2); while(1) ADC_CONTR = ADC_POWER |ADC_SPEEDLL|ADC_START|0; / AD0 Delay(2); while(!(ADC_CONTR&ADC_FLAG); ADC_CONTR &=ADC_FLAG; ADC_BARK = ADC_RES; ADC_CONTR = ADC_POWER |ADC_SPEEDLL|ADC_START|1; / AD0 Delay(2); while(!(ADC_CONTR&ADC_FLAG); ADC_CONTR &=ADC_FLAG; ADC_BARK += ADC_RES; if(ADC

26、_BARK=75) IN1 = 1; if(IN1=1) break; if(KEY3=0) /状态改变 delay_50us(200); if(!KEY3) while(!KEY3); STATUS_FLAG = STATUS_FLAG; if(STATUS_FLAG=0) LCD_string(0,10,S:auto); else LCD_string(0,10,S:hand); delay_50us(200); while(!KEY3); break; IN1=0; DAC_data = OUT_1_5A ; Delay(2); while(1) ADC_CONTR = ADC_POWE

27、R |ADC_SPEEDLL|ADC_START|0; / AD0 Delay(2); while(!(ADC_CONTR&ADC_FLAG); ADC_CONTR &=ADC_FLAG; ADC_BARK = ADC_RES; ADC_CONTR = ADC_POWER |ADC_SPEEDLL|ADC_START|1; / AD0 Delay(2); while(!(ADC_CONTR&ADC_FLAG); ADC_CONTR &=ADC_FLAG; ADC_BARK += ADC_RES; if(ADC_BARK=60) IN1 = 1; if(IN1=1) break; if(KEY3=0) /状态改变 delay_50us(200); if(!KEY3) while(!KEY3); STATUS_FLAG = STATUS_FLAG; if(STATUS_FLAG=0) LCD_string(0,10,S:auto); else LCD_string(0,10,S:hand); delay_50us(200); while(!KEY3); break; IN1=0; DAC_data = OUT_0_5A ; Delay(2); while(1) ADC_CONTR = ADC_POWER |ADC_SPEEDLL|ADC_START|1; / AD0 Delay(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1