首页 简易数控直流电源设计

简易数控直流电源设计

举报
开通vip

简易数控直流电源设计简 易 数 控 直 流 电 源 设 计 姓 名: 指导老师: 梁连伟、刘秋菊 目 录 摘要……………………………………………………………2 1. 方案设计、比较与论证……………………………………3 1.1 方案设计与论证…………………………………………………3 1.2 方案论证 ………………………………………………………4 2. 系统硬件电路设计…………………………………………5 2.1 电源模块 ……………………………………………………5 ...

简易数控直流电源设计
简 易 数 控 直 流 电 源 设 计 姓 名: 指导老师: 梁连伟、刘秋菊 目 录 摘要……………………………………………………………2 1. 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 、比较与论证……………………………………3 1.1 方案设计与论证…………………………………………………3 1.2 方案论证 ………………………………………………………4 2. 系统硬件电路设计…………………………………………5 2.1 电源模块 ……………………………………………………5 2.2 数控模块………………………………………………………6 2.3 稳压输出模块 ………………………………………………9 3. 软件设计 …………………………………………………11 3.1 主流程图………………………………………………………11 3.2 电压步进增减流程图…………………………………………12 4. 系统测试结果 ……………………………………………13 4.1 测试仪器………………………………………………………13 4.2 测试方法 ……………………………………………………13 5.总结 …………………………………………………………………14 参考文献 ……………………………………………………………15 附录1:源程序…………………………………………………………16 摘要 本系统以AT89S52高档8位单片机为核心处理器,主要控制输出电压,最后显示在LED上。在简易数控直流电源中,通过两个按键控制电压步进增减,单片机将数值信号送到DAC0832,转换成模拟信号,经过OP-07和LF356运算放大器,在经过TIP122和TIP127构成闭环推挽输出电路,将电压输出。AT89S51主要是控制输出电压,信号处理,LED显示。 关键字:单片机,数模转换,数控电源. 简易数控直流电源设计 1. 方案设计、比较与论证 1.1 方案设计与论证 方案一: 为了完成题目的所要设计的各种功能,将整个电源分成三个部分:数控部分、稳压输出部分和供电系统。框图如图1所示: 图1: 方案一原理图方框图 数控部分 主要由数字电路构成,它要完成键盘控制,预置拔码开关输入控制、电压控制字输出,数码管显示控制、电流过流时的软件保护及报警等功能。 由于数控部分功能较多,选用了新华公司的8位单片机C8051F020。C8051F020实现数控功能的框图如图2所示: 图2: 方案一数控部分 数控部分的核心是一个C8051F020最小应用系统。 用两个键盘作为输入控制,键盘接到C8051F020的P3的两个端口。控制输出电压。在通过LED显示。 预置电压输入电路有8个开关组成。接到P1口。四个开关接到P1口的低四位,表示预置电压的整数,四个开关接到P1口的高四位,表示预置电压小数位。电源加电时,在初始化程序中CPU从P1口读入预置值,根据预置值输出电压控制字,实现开机预置。然后通过LED显示。 输出电压通过万用表测出与输入的电压是否一样。 软件过渡保护和报警通过中断实现。稳压输出电路含有过流检测电路,当电源过流时,过流检测电路输出低电平,送到CPU的INT1申请中断,CPU接收后,延时0.5s,再次检测是否过流,若仍然过流,并行以下气操作:电压控制字置为0;控制数码管全灭全亮,交替闪烁;CPU的P3.脚送出约1KHz的方波,经三极管驱动后推动蜂鸣器发出报警声。 数控部分与稳压输出部分的接口有两个:一个是由数控部分到稳压部分的电压控制字宽度为8位;另一个稳压部分给数控部分的过渡指示信号。 方案二:此方案采用ATMEL 公司的8位单片机AT89S52作为控制处理器。89S52实现数控功能的框图如图3所示:该方案与方案一控制与供电部分的原理大同小异。只是控制芯片不同。 图3: 方案二的数控部分 1.2 方案论证 两个方案均可行。 方案一采用了C8051F020作为控制芯片,C8051F020I/O口有8个,不要扩展外接口,特殊功能寄存器有100个,程序存储器空间有64K字节,数据存储器空间有4K+256字节,处理速度快。可是在在软件编程的时候特殊寄存器设置麻烦,有些端口不能位选,价格比较贵。方案二采用AT89S52作为控制芯片。89S52I/O口只有四个,程序员存储器空间有8K字节,数据存储器空间有256字节。处理速度一般。I/O口可以实现设计所要的端口,程序存储器和数据存储器空间都够用了,处理速度可以满足硬件处理要的速度。而且软件编程简单,价格便宜。 相比之下,选用方案二。 2.系统硬件电路设计 本系统的硬件电路设计共包括4个模块:1、电源模块2、数控模块3、稳压输出模块。 2.1 电源模块 设计的芯片供电的电源电路如图4所示:电源部分输入220V/50Hz交流电,输出全机所需要的三种电压:+5V,+15V和-15V。+5V主要提供数控部分和D/A转换芯片使用,电流最大约为400mA;+15V作为运放的正电源,同时也是稳压输出电路的主电源,最大电流约650mA;-15V作为运放的负电源同时也给基准电压源(LM336,-5V)供电,该电流较小,不超过50mA, 电路中7805和7815负载重,功耗大,应加装散热片。 图4: 电源模块 2.1.1 电源(0.6A) 15V电源电路如图4所示。 对于滤波电容的选择,要考虑三点:①整流管的压降;②7815/7915最小允许压降Ud;③电网波动10%。由此而计算得允许纹波的峰-峰值 按近似电流放电计算,并没⊙= (通角),则 C= EMBED Equation.3 EMBED Equation.3 故选取滤波电容C=2200uF/30V 2.1.2 +5V电源(1A) +5V电源电路如图4所示。计算允许的最大纹波峰-峰值 故选取滤波电容C=4700uF/16V。 2.2 数控模块 主要由数字电路构成,要完成键盘控制、预置拔码开关输入控制、电压控制字输出、数码管显示控制、电流过流保护等功能。由于控制功能多,选用89S52最小应用系统,如图5所示: 图5: 数控模块 2.2.1 89S52应用最小系统 89S52最小应用系统包括一片89S52CPU芯片和一片74LS137。 89S52单片机是一种低功耗/低电压、高压能的8位单片机,它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器(NURAM)技术,而且其输出引脚和指令系统都和指令系统都与MCS-51兼容,是一种功能强、灵活性高且价格合理的单片机,可方便应用于各种领域控制领域。 89S52是51系列中的高性能的单片机。89S52单片机功能主要有:8位的CPU,8KB可编的片内程序存储器(Flash ROM),256B的片内数据存储器(RAM),32条可编程I/O口线,2个16位定时器/计数器,6个中断源,21个专用寄存器,1个全双工串行I/O口,可实现多机通信,三级程序存储器保密,片内时钟振荡器,具有两种省电方式:空闲方式(Idel Mode)和掉电方式(Power Down Mode),看门狗定时器等。 89S52单片机内部结构如图所6示。按功能分,它可由以下五部分组成,即微处理器(CPU)、存储器、I/O端口、定时/计数器和中断系统。各引脚分布如图6所示: 图5: 89S52内部结构框图 图6; 89S52引脚分布图 2.2.2 预置电压部分由八个开关控制。四个开关接到P1口的低四位,控制预置电压的整数位,四个开关接到P1口的高四位,控制预置电压的小数位。 2.2.3 显示器接口电路 显示器电路如图7所示:LED1显示输入电压,LED2显示预置电压。 图7: LED显示模块 2.3 稳压输出模块 稳压输出模块原理图如图8所示。这部分将控制部分送来的电压控制字数据转换成稳定电压输出。它由数/模转换器(DAC0832)、集成运放OP-07、LF356、晶体三极管VT8(TIP122)、VT9(127)、VT10(9014)、VT11(9015)、基准电压源LM336-5组成。 1.3.1 主电路的工作原理能参数计算 电压输出范围0~9.9V,步进0.1V,共有100种状态,8位字长的D/A转换器具有256状态,能满足要求。设计中用两个电压控制代表0。1V,当电压控制字从0,2,4……198时,电源输出为0V,0.1V,0.2V……9.9V。电路选用的D/A转换芯片是DAC0832,该芯片价价廉且精度较高。DAC0832属于电流输出型D/A,输出的电流随输入的电压控制字线性变化。若要得到电压,还需要外接一片运放来实现电流到电压的转换。该运放输入端的输入电流对转换精度影响很大,DAC0832输出的电流有几十微安的变化,若运放输入端的输入电流为0。1UA,如UA741的输入电流约为此值,且有一定变化,则会引入相当于1~2个电压控制字的误差,因此应选用高输入阻抗的运放,如JFETL输入的运放LF356(或OP07),它的输入电流可以忽略。DAC0832需外接基准电压具有高稳定度和低纺波,故选取LM336-5作为基准源。当DAC0832采用5V基准电压时,D/A转换电路的满幅输出为5V(电压控制字为255)。由于实际用到的最大电压控制字为198,因此D/A部分最大输出电压为 将它写成通式,即 图8: 稳压输模块 D/A转换部分输出电压Ui作为电源功放级的输入电压。功率级由U9(LF356)和VT8(TIP122)、VT9(TIP127)构成闭环推挽输出电路。该电路属于典型的电压串联负反馈电路。于是可以写出输出电压Uo与输入电压Ui的关系式,即 将式代入得 当Ui=3.882V, =9.9V由上述方程可求得 。 现选取 的精密多圈电位器。当CPU输入电压控制字 时,Ui=3.882V,调节 使Uo=9.9V。 1.3.2 由图所示,VT10、VT11构成过流保护电路。正常工作时,VT10集成电路电来为-15V,使VT8截止,A点输出高电平,不触发中断。当输出电流过大时(例如Io>500mA)时,取样电阻R16上的压降>0.75V。调节RP3使VT7的UBE>0.6V时,VT7管会导通,VT7的等电极电平提高,于是VT8也导通,A点呈现低电平,触发9031中断,执行中断保护程序。 3.软件设计 3.1 主流程图 3.2电压步进增减流程图 4、系统测试结果 4.1 测试仪器 MF-47万用表,TKS-588仿真机。 4.2 测试方法 根据题目各项技术指标要求作了系统全面的测试。通过键盘输入各项参数,控制输入的电压步进增减电压从0~9.9V娈化。通过一组开关实现电压预置。 4.2.1输出端空载时 数据记录(室温) 1 2 3 4 5 6 7 8 9 10 11 输出电压(V) 0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 9.9 实测电压(V) 0.009 0.987 2.001 3.004 4.016 5.027 6.024 6.989 7.998 8.995 9.908 4.2.2带载0.5A时 数据记录时(室温) 1 2 3 4 5 6 7 8 9 10 11 输出 电压(V) 0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 9.9 实测电压(V) 0.000 0.992 1.998 2.999 3.996 5.000 5.990 6.986 7.953 8.947 9.854 5. 总结 这次设计制作,我们严格按照大赛组委会颁布的《参赛学生守则》参加比赛。通过这次实践设计制作,我们体验了真正的产品研发流程,为我们以后从事相关工作积累了经验;另一方面,在这么短的时间内,完全自主设计制作出这么高质量的简易数控直流电源设计,不是一个人能完成的,这需要团队的高度合作,这也体现了当今企业集团中,团队合作精神的重要性,当然基础知识功底扎实绝对不可忽视。 . 参考文献 1: 刘定良编著 单片机技术与应用 中南大学出版社 2005年8月 2:谭浩强编著 C程序设计(第二版) 北京:清华大学出版社 2005年1月 3: 高吉祥编著 模拟电子线路设计 电子工业出版式社 2007年5月 4:陈大钦编著 模拟电子技术基础 武汉理工大学出版社 2001年10月 5;陈大钦编著 电子技术基础实验 高等教育出版社 2001年5月 附录:源程序 #include #include #include "regx51.h" //本程序设定S9键为增加键,当按住S9键不松开时,输出Vout以0.1V连续步进, //直至键S9松开,当以一定的时间间隔点动S9键时,输出Vout也为点动步进 //递减键S11的功能与S9基本相同时,输出电压的值显示在3个LED上 unsigned char ;BJF;COUNTW;Disdata ; unsigned int i,k;int R1,R2,R3; //const char table[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92, 0x82 ,0XD8,0x80,0x90,0xFF}; const char table[11]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xff}; //不带小数点的显示段码表 //const char table0[11]={0X40,0X79,0X24,0X30,0X19,0X12,0X02,0X78,0X00,0X10, 0xFF}; const char table0[11]={0xBf,0x86,0xDb,0xCf,0xE6,0xEd,0xFd,0x87,0xFf,0xEf,0xff}; //带小数点的的显示段码表 unsigned char code scan_con[3]={0xfb,0xfd,0xfe};//3位列扫控制字 unsigned char s[3]; //定义一个显示缓冲数组 //把需要显示的数字装入显示缓冲数组 void sfz() { s[0]=R1; //小数点位数 s[1]=R2; //整数个位 s[2]=R3; //整数十位 } //系统各寄存器初始化子程序 void initial() { R1=0; R2=0; R3=0; P2=0XC0; //全为0 P3=0XFF; //控制管 P1=0X00; //初始化02.0,5.12/256=0.02,20*0.02=0.4,0.4*5=2V; sfz(); //把需要显示的数字装入显示缓冲数组 } void delay10ms() { unsigned char i,j; for(i=20;i>0;i--) for(j=248;j>0;j--); } //显示子程序 void display() { for(COUNTW=0;COUNTW<3;COUNTW++) { Disdata=s[COUNTW]; if(COUNTW==1) Disdata=table0[Disdata]; //第二位需要显示小数点 else Disdata=table[Disdata]; P2=scan_con[COUNTW]; P0=Disdata; delay10ms(); } } //键扫描子程序 void KEYSCAN() { while(1){ while(1) { if (P3_4==0) break; else if(P3_5==0)break; } delay10ms(); //若有键按下,则软件延时 if (P3_4==0)break; //若还有键按下,则终止循环扫描,返回 else if(P3_5==0)break; } } //键服务子程序 void keyserve() { if(P3_4==0) BJF=0X01; //S9键按下,步进加标志置1 if(P3_5==0) BJF=0X00; //S11键按下,步进加标志清0 } //步进加子程序 void BJADD() { P1=P1+2; R1++; while(P3_4==0); if(R1>9) { R1=0; R2++; if((R2>9)&&(R3<=1)) { R2=0; R3++; //若R3,R2,R1超过20.0 } } sfz(); //把需要显示的数字装入显示缓冲数组 } //步进减子程序 void BJSUB() { P1=P1-2;R1=R1--; while(P3_5==0); if((R1<0)&&(R3>=0)&&(R2>=0)) { R1=9;R2--; if((R2<0)&&(R3>0)) {R2=9;R3--;} else if(R3<=0)R3=0; } sfz(); //把需要显示的数字装入显示缓冲数组 } //主程序 main() { initial(); //系统各寄存器初始化 while((P3_4==1)&&(P3_5==1)) display(); //调用一次显示子程序 while(1) { KEYSCAN(); //键盘扫描 keyserve() ; //若确实有键按下,则调用键服务程序 if(BJF==0X01) BJADD();//若步进加标志为1,则调用步进加子程序 else BJSUB(); //若步进加标志为0,则调用步进减子程序 while((P3_4==1)&&(P3_5==1)) { display(); }//调用一次显示子程序 } } PAGE 11 _1248159494.unknown _1248160589.unknown _1248160854.unknown _1248456415.vsd � � � ������� ��������D/A��� ��������� ����KEY1� ����KEY2� ��������0.1V������� ��������0.1V������� _1248457041.vsd � � � ����� ��������������� ������� ������� ����0V� ����������� ������ ������� �������������� ��������������� ����������� N� Y� _1248450849.vsd � 89S52� ��������� LED����� ��������� DAC0832� ��������� ��������� ����� ����� ��������� _1248160613.unknown _1248160476.unknown _1248160538.unknown _1248159812.unknown _1248114961.unknown _1248116002.unknown _1248116813.unknown _1248159466.unknown _1248116996.unknown _1248116133.unknown _1248116216.unknown _1248115643.unknown _1248115888.unknown _1248115454.unknown _1248076757.vsd � C8051F020� ��������� P1� LED����� P0 P2� DAC0832� P4� ��������� ����� ����� ��������� ��������� P3� _1248114528.unknown _1248074457.vsd � ��������� ��������� ������������� ~220V 50Hz� � � Uo� RL�
本文档为【简易数控直流电源设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_935412
暂无简介~
格式:doc
大小:679KB
软件:Word
页数:20
分类:互联网
上传时间:2013-05-18
浏览量:106