数控步进直流稳压电源的设计与制作_论文.doc_第1页
数控步进直流稳压电源的设计与制作_论文.doc_第2页
数控步进直流稳压电源的设计与制作_论文.doc_第3页
数控步进直流稳压电源的设计与制作_论文.doc_第4页
数控步进直流稳压电源的设计与制作_论文.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

安徽机电职业技术学院创新工作室设计报告 数控步进直流稳压电源的设计与制作安徽机电职业技术学院摘要:本课题设计以at89c51为核心,通过a/d、d/a转换、v/i转换及独特的算法实现了高精度的,电压输出范围为012v,电流输出范围为0ma1a的数控步进直流稳压电源。该电流源具有电压可预置,0.5v步进,同时显示给定值和实测值等功能。关键字:at89c51,数控电源,a/d、d/a转换、v/i转换cnc stepping dc voltage source of design and manufactureabstract: this topic design uses at89c51 as the core, the a/d, d/a transformation, v/i conversion and unique method of high voltage output, the range of 0-12 v, current output for 0ma 1a nc stepping dc voltage stabilizer. with the current source voltage preset, 0.5 v stepping, given value and values etc. function.key words: at89c51, numerical controlled source,a/d、d/a converter、 v/i converter目 录1. 系统设计31.1 设计要求31.1.1 基本要求31.1.2 技术指标31.2 总体设计方案41.2.1 方案论证与比较42. 单元电路设计72.1 电压源电路设计72.2 控制器电路设计82.2.1 单片机最小系统设计82.2.2 a/d、d/a电路设计82.3 键盘电路设计92.4 显示器电路设计102.5 稳压电源电路103. 软件设计113.1 软件设计流程图113.2 软件功能、算法及源程序:124. 系统测试144.1 测试使用的仪器144.2 指标测试和测试结果144.2.1 输出电压范围测试144.2.2 电压显示准确性测试144.2.3 电流显示准确性测试144.2.4 步进功能测试154.2.5 纹波功能测试155. 结语15参考文献16附录1 主要元器件清单16附录2 单片机最小系统原理图17附录3 模块电路原理图17附录4 单片机最小系统pcb19附录5 模块电路pcb19附录6 操作说明:20电源就按照这个目录写,好的,加上单元电路调试的方法、问题与解决、电路与程序的改进、问题与不足。1. 系统设计设计并制作数控步进直流稳压电源。输入交流200240v,50hz;输出直流电压0+12v。其原理示意图如下所示。1.1 设计要求题目要求设计并制作数控步进直流稳压电源。其要求如下:1.1.1 基本要求 (1) 通过“”、“”键步进调整输出电压,可调范围为0+12v,步进幅度为0.5v。 (2) 输出电压和电流值通过4位led显示,显示精度分别为0.1v和0.01a。通过“f1”键实现电压/电流显示切换,开机默认显示电压,按“f1”转换为显示电流,再按“f1”转换为显示电压。4位led末位显示单位,电流显示“”,电压显示“”。 (3) 过流保护与报警功能。1.1.2 技术指标 (1) 交流输入电压范围:220v10 (2) 输出电压范围:0+12v (3) 输出电流范围:01a (4) 输出纹波电压:10mv(输出电压为10v,输出电流为500ma时测得) (5) 过流保护动作电流:1.1 a1.2 总体设计方案1.2.1 方案论证与比较(1)电压源模块方案方案一:采用集成稳压器构成的开关恒压源。方案二:图1.1 采用集成稳压器构成的开关电压源原理框图(2)控制器模块方案方案一:采用fpga作为系统的控制模块。fpga可以实现复杂的逻辑功能,规模大,稳定性强,易于调试和进行功能扩展。fpga采用并行输入输出方式,处理速度高,适合作为大规模实时系统的核心。但由于fpga集成度高,成本偏高,且由于其引脚较多,加大了硬件设计和实物制作的难度。方案二:采用at89c51作为控制模块核心。单片机最小系统简单,容易制作pcb,算术功能强,软件编程灵活、自由度大,较好的发挥c语言的灵活性,可用编程实现各种算法和逻辑控制,同时其具有功耗低、体积小、技术成熟和成本低等优点。基于以上分析,选择方案二,利用at89c51单片机将电压步进值或设定值通过换算由d/a转换,驱动稳压源电路实现电压输出。输出电压经处理电路作a/d转换反馈到单片机系统,通过数码管显示电压或电流的值。在器件的,d/a转换器选用8位优质d/a转换芯片dac0832,直接输出电压值,a/d转换器选用8位模数转换芯片adc0832。(3)显示器模块方案方案一:使用led数码管显示。数码管采用bcd编码显示数字,对外界环境要求低,易于维护。方案二:使用lcd显示。lcd具有轻薄短小,可视面积大,方便的显示汉字数字,分辨率高,抗干扰能力强,功耗小,且设计简单等特点,但编程相对复杂。综上所述,选择方案一。(4)键盘模块方案方案一 :采用独立式按键电路,每个按键单独占有一根i/o接口线,每个i/o口的工作状态互不影响,此类键盘采用端口直接扫描方式。方案二 :采用标准4x4键盘,此类键盘采用矩阵式行列扫描方式,优点是当按键较多时可降低占用单片机的i/o口数目。题目要求电压值步进调整,需要的按键只有四个。综合考虑两种方案及题目要求,采用方案一。(5)电源模块方案系统需要多个电源,单片机、a/d、d/a、使用5v稳压电源,运放需要12v稳压电源,同时题目要求最高输出电流为1a,电源需为系统提供足够大的稳定电流。综上所述,采用三端稳压集成7805、7812、7912分别得到+5v和12v的稳定电压,利用该方法实现的电源电路简单,工作稳定可靠。122 系统组成经过方案比较与论证,最终确定系统的组成框图如图所示。 输出输出调整单元整流滤波交流输入 芯片供电部分d/a转换器a/d转换器at89c51按键数码管显示 图1.1 数控步进直流稳压电源系统组成框图2. 单元电路设计2.1 恒定电压源电路设计2.2 控制器电路设计2.2.1 单片机最小系统设计通过键盘模块输入给定的电流值或是步进调整信号传送给单片机,单片机在接受到信号后进行处理运算,并显示其给定的电流值,然后经d/a转换以输出电压,驱动恒流源电路实现电流输出,并将采样电阻上的电压经过a/d转换输入单片机系统,通过补偿算法进行数值补偿处理,调整电流输出,并驱动显示器显示当前的电流值。最小系统的核心为at89s52,为了方便单片机引脚的使用,我们将单片机的引脚用接口引出,电路如图2.2所示.p0口和p2.0p2.3是数码管接口;p3口作为d/a转换接口,p2.5p2.7也是d/a转换器的接口;p1.0p1.2是a/d转换器的接口;p1.3p1.6口为键盘接口。图2.2 由at89c51为核心的单片机最小系统2.2.2 a/d、d/a电路设计(1)d/a转换器根据设计基本要求,da转换输出范围为-5v0v,要满足步进为0.5v的要求,我们选用8位的d/a转换器,dac0832是较好的选择,dac0832各引脚的功能如下:di07:数据输入线;ile:数据锁存信号,高电平有效cs:输入寄存器选择信号,低电平有效,wr:输入寄存器的写选通信号,输入锁存器的锁存信号le1由ile|、cs、wr1的逻辑组合产生。当ile为高电平、cs为低电平、wr1为输入负脉冲时,在le1产生正脉冲;le1为高电平时,输入锁存器的状态随数据输入线的状态变化,le1的负跳变将数据线上的信息锁入输入寄存器。 xfer:数据传送信号,低电平有效。wr2为dac寄存器的写选通信号。dac寄存器锁存信号le2,由xfer、wr2的逻辑组合产生。当xfer为低电平,wr2输入负脉冲,则在le2产生正脉冲;le2为高电平时,dac寄存器的输出和输入寄存器的状态一致,le2负跳变,输入寄存器的内容打入dac寄存器。vref:基准电源输入引脚。 rf0: 反馈信号输入引脚,反馈电阻在芯片内部。 iout1、iout2:电流输出引脚。电流iou t1与iout2的和为常数,iout2、iout1随dac寄存器的内容线性变化。 vcc: 电源输入引脚。 agnd: 模拟信号地。 dgnd: 数字地。(2)a/d转换器在电路中,adc0832与单片机p1.0p1.2口相接,通过编程模拟adc0832的通信时序实现对adc0832的操作,然后通过程序查询该管脚是否为低电平,从而实现对adc0832中寄存器数据的读取。如图2.3所示为a/d与d/a转换电路图,其中con8接口与单片机最小系统的p1口相接。图2.3 a/d与d/a转换电路图2.3 键盘电路设计在设计中,使用独立式键盘,可以“+”、“-”、“切换”。其电路图如图2.4所示。图2.4 键盘电路图2.4 显示器电路设计本设计采用四个数码管显示模块,数码管与单片机接口:在本设计中,采用8位并行接法,其接口如图2.5所示。图2.5 rt19264d接口2.5 稳压电源电路在本设计中,运放需12v供电,单片机和a/d、d/a需5v供电,采用三端稳压器7805、7812、7912构成一稳压电源,电路如图2.6所示。图2.6 稳压电源电路稳压电源由电源变压器、整流电路、滤波电路和稳压电路组成,如图2.1 图2.7 电源方框及波形图a 整流和滤波电路:整流作用是将交流电压u2变换成脉动电压u3。滤波电路一般由电容组成,其作用是脉动电压u3中的大部分纹波加以滤除,以得到较平滑的直流电压u4。b 稳压电路:由于得到的输出电压u4受负载、输入电 压 和 温度的影响不稳定,为了得到更为稳定电压添加了稳压电路,从而得到稳定的电压u0。3. 软件设计 软件设计采用c语言,对at89c51进行编程实现各种功能。软件设计的关键是对a/d、d/a转换器的控制。软件实现的功能是: 确定电压步进调整 电压给定值的设置 测量输出电压值3.1 软件设计流程图|图3.1 单片机程序流程图3.2 软件功能、算法及源程序:源程序用keil c51编写,在xp系统下调试成功。以下给出部分源程序:/本程序功能:用adc0832测量电压并显示,并通过dac0832输出相同的电压/#include #include #include #include #defineseg_dp p0#define seg_wp p2#define da_dp p3sbit adcs = p10;sbit adclk = p11;sbit addi = p12;sbit addo = p12;sbit adf1 = p13;sbit adf2 = p14;sbit addjia = p15;/按键加 sbit addjian = p16;/按键减 sbit daile = p24;sbit dawr2 = p25;sbit daxfer = p26;sbit dawr1 = p27;unsigned char code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xc1;/共阳/tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x3e;共阴void delay1ms(unsigned int tt)unsigned char i;while(tt-) for(i=50;i0;i-);void display(unsigned int dat) /显示的数值为毫伏unsigned char ge,shi,bai,qian,wan;wan = dat/10000%10;qian = dat/1000%10;bai = dat/100%10;shi = dat/10%10;ge = dat%10;seg_wp = seg_wp&0xf0|0x07;seg_dp = tabwan; delay1ms(10);seg_wp = seg_wp&0xf0|0x0b;seg_dp = tabqian&0x7f;/千位加小数点delay1ms(10);seg_wp = seg_wp&0xf0|0x0d;seg_dp = tabbai;delay1ms(10);seg_wp = seg_wp&0xf0|0x0e;seg_dp = tab10;delay1ms(10);unsigned char adc0832(bit mode,bit channel) /ad转换,返回结果unsigned char i;unsigned char dat,ndat;adcs = 0;/拉低cs端_nop_();_nop_();addi = 1;/第1个下降沿为高电平adclk = 1;/拉高clk端_nop_();_nop_();adclk = 0;/拉低clk端,形成下降沿1_nop_();_nop_();addi = mode;/低电平为差分模式,高电平为单通道模式。adclk = 1;/拉高clk端_nop_();_nop_();adclk = 0;/拉低clk端,形成下降沿2_nop_();_nop_(); addi = channel;/低电平为ch0,高电平为ch1adclk = 1;/拉高clk端_nop_();_nop_();adclk = 0;/拉低clk端,形成下降沿3addi = 1;/控制命令结束(经试验必需)dat = 0;/下面开始读取转换后的数据,从最高位开始依次输出(d7d0)for(i = 0;i 8;i+)dat = 1;adclk=1;/拉高时钟端_nop_();_nop_();adclk=0;/拉低时钟端形成一次时钟脉冲_nop_();_nop_();dat |= addo;ndat = 0; /记录d0if(addo = 1)ndat |= 0x80;/下面开始继续读取反序的数据(从d1到d7) for(i = 0;i = 1;adclk = 1;/拉高时钟端_nop_();_nop_();adclk = 0;/拉低时钟端形成一次时钟脉冲_nop_();_nop_();if(addo = 1)ndat |= 0x80; adcs = 1;/拉高cs端,结束转换adclk = 0;/拉低clk端addi = 1;/拉高数据端,回到初始状态if(dat = ndat)return(dat);elsereturn 0; void dac0832(unsigned char dat)daile = 1;dawr1 = 0;daxfer = 0;dawr2 = 0;da_dp = dat;main()unsigned int adc; unsigned int adc1;while(1) if ( addjia=0) delay1ms(100); if ( addjia=0) if (adc1=5000) adc1=5000; if (adc10) adc1=adc1-200; adc = adc0832(1,0); /单通道模式,ch0 adc = adc*23.6855*2; /转换为实际电压便于显示display(adc);dac0832(adc1/19.607843); 4. 系统测试4.1 测试使用的仪器测试使用的仪器设备如表4.1所示表4.1 测试使用的仪器设备序号名称数量备注1直流稳压稳流电源12数字万用表131/2位3数字万用表141/2位4数字万用表15位4.2 指标测试和测试结果4.2.1输出电压范围测试测试条件:空载按“”键电压应可调至+12v,按“”键电压应可调至0.5v以下。经测试符合要求。4.2.2电压显示准确性测试测试条件:空载在输出电压分别为5v、7v、10v时,测量电压显示值与实际值的差异。经测试符合要求。4.2.3 电流显示准确性测试测试条件:输出电压为10v调节负载大小,在输出电流分别为0.3a、0.5a、0.7a、1a时,测量电流显示值与实际值的差异。经测试误差不大。4.2.4步进功能测试在输出电压为5v、输出电流为100ma时,连续按“”键10次,电压应升至10v,再连续按“”键6次,电压应为7v。经测试符合要求。4.2.5 纹波电压测试测试条件:输出电压为10v,输出电流为500ma用示波器测试负载两端交流信号的最大幅度。4.2.6 过流保护功能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论