小功率电流源设计毕业论文 (设计).doc
毕业论文(设计)论文题目:小功率电流源设计学生姓名:学 号:所在院系:电气信息工程学院专业名称:自动化届 次:指导教师:淮南师范学院本科毕业论文(设计)诚信承诺书1.本人郑重承诺:所呈交的毕业论文(设计),题目 是本人在指导教师指导下独立完成的,没有弄虚作假,没有抄袭、剽窃别人的内容; 2.毕业论文(设计)所使用的相关资料、数据、观点等均真实可靠,文中所有引用的他人观点、材料、数据、图表均已注释说明来源; 3. 毕业论文(设计)中无抄袭、剽窃或不正当引用他人学术观点、思想和学术成果,伪造、篡改数据的情况; 4.本人已被告知并清楚:学院对毕业论文(设计)中的抄袭、剽窃、弄虚作假等违反学术规范的行为将严肃处理,并可能导致毕业论文(设计)成绩不合格,无法正常毕业、取消学士学位资格或注销并追回已发放的毕业证书、学士学位证书等严重后果; 5.若在省教育厅、学院组织的毕业论文(设计)检查、评比中,被发现有抄袭、剽窃、弄虚作假等违反学术规范的行为,本人愿意接受学院按有关规定给予的处理,并承担相应责任。 学生(签名): 日期: 年 月 日目 录1绪论21.1课题研究的背景与意义21.2课题研究的国内外现状21.3课题研究的主要内容32系统方案制定32.1 方案提出32.2 方案的比较与选择53 系统硬件部分设计53.1系统整体设计思路53.2控制电路设计63.3 D/A转换电路设计73.4 恒流源电路设计83.5 键盘电路设计93.6 显示电路设计103.7 稳压电源设计113.8 系统整体电路图124 系统软件设计134.1 系统流程图设计134.2 系统仿真与调试175 总结195.1 设计小结195.2 收获体会195.3 展望20参考文献20小功率电流源设计学生:xxx(指导老师:xxx)(xxxxxxxx电气信息工程学院)摘 要: 本文根据课题研究内容设计了一种小功率电流源系统,主要包括单片机控制模块、数模(D/A)转换模块、恒流源模块、显示模块等部分。该系统以以单片机为核心,恒流源模块将D/A转换来的电压模拟量通过恒流源电路变成恒流;显示模块采用数码管显示译码芯片与74LS47设计成10进制4位数码动态显示电路。键盘模块采用常见单路复位开关,做成1×4矩阵键盘,用动态扫描方式读取外部按键动作。此外,本设计可实现电流0-250mA且有±1mA和±10mA的两种步进,同时有数码显示输入的电流值。关键词: 电流源 ; D/A转换 ; 译码显示器Small Power Current Source DesignStudent: xxxxxxx(Faculty Adviser: xxxxxx)(Department of Electric and Information Engineering, xxxxxx Normal University)Abstract:Based on the research content of design a small power current source, it is divided into five modules: Single-chip control, digital-to-analog (D / A) conversion module, constant current source module, the output display module. To single-chip single - chip control module as the core of the input current signals to digital output; display module display digital 74LS47 decoder chip designed with 10-band digital dynamic display four circuits. Common use of the keyboard module reset single switch, make 1 * 4 matrix keyboard, using dynamic scanning button to read the external action. In addition, the design can achieve the current 0-250mA and a ± 10mA and ± 1mA Step two, at the same time digital display of the current input.Keywords:Current source ; D / A converter ; Decoding show 1绪论1.1课题研究的背景与意义自从人类有了电之后,各行各业都因为有了电而飞速发展,并出现了无数新型产业,直至今日,电已经在我们的日常生活中不可或缺。但是变电站输送给我们用户的是380/220V交流电,为了使人们的生活更加便利,电器都朝微型化发展,随着人类用电量的增加,电器又要功率低,所以将380/220V高压变成较小,并能安全可靠地提供给各类不同小电器的小电源已经受到电器行业的重视。近几年,小电源的市场已经扩大,技术也将慢慢趋于成熟。如今,小电源还介入了单片机,使小电源智能化,数字化。随着电子技术的发展、数字电路应用领域的扩展,当今社会,智能、数字化成为人们所追求一种趋势,产品的性能、价格和发展空间等越来越受人们关注,特别是对电子产品的精密和稳定度尤为关注。性价比高的电子设备,首先离不开的是稳定电源,电源稳定的程度越高,设备及外围条件越优越,即设备寿命更长久。因此,我们对数控的恒定的电流器件需要越来的越急切。现在社会,数控型恒压的技术很是成熟,但恒流的方面尤其是数控型恒流技术仅仅刚刚起步并且有待继续发展,所以高性能数控型恒流的器件开发与应用还存在着巨大发展的空间。本课题正是满足社会发展需求,研制出来一种:基于单片机的小功率高性能数控型电流源。本系统输出电流稳定,输出的电流能够在0mA250mA的范围之内任意的进行设定,不随着负载与环境温度的变化而变化,因此能够实际地应用于小功率直流恒流源的领域。单片机的广泛应用促进了设备和产品的微型化、数字化、自控化和智能化,这些直观意义很容易理解。然而,单片机应用更深刻的意义还在于,单片机的应用加深了计算机技术与自动控制技术的结合,从而在自动控制领域里引发了一场对传统控制技术的革命,也就是单片机正从根本上改变着传统的控制系统的设计思想和设计方法,使以往必须有模拟或数字电路实现的控制共能。1.2课题研究的国内外现状由国内外现在所掌握技术看,全部由硬件来实现电流源它们多采用的是固定值控制,但数控型电流源电流可以任意的进行设定,并且控制的精度比较高。当前小功率电流源的实现的主要方法如下:1) 完全用硬件实现对调整管的控制,电流的步进采用计数器的计数步进方式实现,利用双计数器的控制功能,其中二进制计数器的输出经控制输出步进,十进制计数器通过译码后显示输出的电流值。为了使系统工作正常,必须保证双计数器同步工作,保证控制值与显示值一致。因此整个电路比较复杂。2) 采用一套十进制计数器,该计数器的输出接至存储器E2PROM的地址输入端,存储器的每个存储单元中存有不同电流的控制字,存储器的输出控制字通过D/A转换以及相应的V/I转换电路实现对输出电流的控制。另一方面计数器的输出又是电流显示电路的输入。这种方法比方法1的电路简单,但是控制精度不高。3) 单片机控制E2PROM的输出,电流控制字存放在E2PROM中,再通过D/A转换以及相应的V/I转换电路实现对输出电流的控制。显示部分也用单片机控制并显示输出电流的大小。4) 单片机直接控制D/A转换,省去E2PROM,同时单片机完成显示,输出电流测量等功能,实现闭环控制,具有功能完整、电路简单、控制精度高的优点。上述4种方案中方案1)、2)所用的芯片多,控制精度低、抗干扰差。方案3)比前两种方案的控制精确更好,但方案4)的功能更完善,控制精度更高,是目前最常采用的电流源控制方法之一。1.3课题研究的主要内容本课题的研究主要内容如下:一、 硬件部分设计包括主控制模块、数模(D/A)转换模块、恒流源模块和显示模块设计。二、软件实现部分设计包括系统主程序图及部分子程序设计,以及对应程序编写。三、系统的调试及仿真实现。2系统方案制定2.1 方案提出 方案一的原理图如图1所示,在此方案中,利用高精度D/A转换器在单片机程序控制下提供可变的高精度的基准电压,该基准电压经过V/I转换电路得到电流,从而达到目的。该方案的难点在于稳定恒流源的设计和高精度电流检测电路的设计。特点是可精确的控制电流的步进量,负载变化对电流输出的影响较小 。AT89C51单片机系统液晶显示器负载V/I转换D/A转换1x4键盘稳压电源图1 方案一原理图 方案二的原理图如图2所示,此方案采用的原理是保持电压恒定而改变电阻阻值的方法来达到改变电流的目的,由于采用的是可编程的数字电位器,因此也可以通过单片机的控制来实现数控。由于改变的是电阻,所以就需要一个精准的外加电压源,但由于数字电阻的电阻变化呈非线性,因此在编程方面的要求就比较高了,再加上功率的损耗和电阻精度的问题,所以利用可编程的数字电位器并不是一个理想的选择,在思路渐渐清晰以后,我们排除了这种方案。可 控 电 流 源可编程数字电位 器电流检测采样模块比较器模块预测/实测显示键盘AT89C51 图2 方案二原理图2.2 方案的比较与选择方案一难点在于稳定恒流源的设计和高精度电流检测电路的设计。特点是可精确的控制电流的步进量,负载变化对电流输出的影响较小 。方案二由于改变的是电阻,所以就需要一个精准的外加电压源,但由于数字电阻的电阻变化呈非线性,因此在编程方面的要求就比较高了,再加上功率的损耗和电阻精度的问题,所以利用可编程的数字电位器并不是一个理想的选择。 综上分析比较,我们最终采用了方案一来设计题目要求的小功率电流源。3 系统硬件部分设计3.1系统整体设计思路 在设计的过程中,我所采用的先整体后局部的研究方法。在拿到这个课题之后,首先查阅、收集相关资料,对该课题做一个深入的了解,研究课题所涉及到的内容,能够较好的掌握有关课题的知识。从而能够轻松地确定系统的设计方案以及系统的各个模块,理清各个模块之间的关系,同时加强对单片机、C语言知识的认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。模拟电路方案设定器件参数进行电路仿真电路安装调试设计实验结束修改电路通过仿真修改电路通过测试否否否否图 3 系统设计思路结构图分析、整理所有资料,并开始进行硬件电路部分的设计。根据所设计的方案,设计出电路原理图。该系统的仿真实现采用的是protuse仿真软件,因此将设计出的电路原理图在protuse仿真软件画出;并采用Keil软件,进行程序的编写,并能够完成各个模块的作用。根据所要实现的要求设计系统流程图,并按照流程图在protuse仿真软件环境中进行系统的仿真与调试,在此过程中很有可能出现一定的问题,但必需要想方设法的去解决,最后完成该课题的设计要求。系统设计思路结构图如上图3所示。3.2控制电路设计系统的核心为AT89C51,AT89C51是一种带4K字节FLASH存储器的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C51单片机的基本结构如图4所示:振荡电路CPUROM/EPROMRAM定时/计数器并行接口串行接口中断系统图4 AT89C51单片机的基本结构单片机在该系统中所起到的作用:通过键盘模块输入给定的电流值或是步进调整信号传送给单片机,单片机在接受到信号后马上进行处理运算,并且能够显示其给定的电流值,然后经D/A转换电路以输出电压,接着驱动恒流源电路实现电流的输出,并将采样电阻上的电压经过V/I转换,通过处理,调整电流输出,并在电流表中显示当前的电流值。外形及引脚排列如图5所示: 图5 AT89C51外形及引脚排列各引脚的功能介绍:VCC:电源;GND:地;P0:P0是一个8位漏极开路的双向I/O口; ST:复位输入;/VPP:访问外部程序存储器控制信号。为了方便单片机引脚的使用,我们将单片机的引脚用接口引出,电路如图6所示:P2口和P3.0P3.3是LED接口;P1口作为D/A转换接口;P3.4P3.7口为键盘接口。图6 AT89C51引脚图3.3 D/A转换电路设计为了达到系统的控制精度,选取8位D/A。具体电路接口如图7所示。D/A转换器选用DAC0832,它是并行输入可编程双路8位D/A转换器。该器件仅有20个引脚,本系统采用DAC0832的直通工作方式。AT89C51单片机控制它只需要9个引脚,分别是8个数据口和一个片选端,非常方便。+5V单电源工作。选典型参考电压+5V,输出电压公式为: V0=V REF×(n/256) 其输出电压范围为:05V。DAC0832是8分辨率地D/A转换的集成芯片。能够与微型处理器完全的兼容。这个芯片以它的价格的低廉、接口的简单、转换的控制容易等等优点,在单片机的应用系统中得到了广泛应用。它是由8位的输入的锁存器、8位的DAC的寄存器、8位的D/A转换的电路以及转换的控制电路所构成。DAC0832的引脚功能电路的应用的原理图如图所示,集成电路的内部有两级输入的寄存器,使得DAC0832芯片能够具备:双缓冲、单缓冲以及直通的三种输入的方式,以适用于各种电路需要。因此这个芯片应用比较广泛,关于DAC0832的应用一些重要的资料如下图:D/A转换的结果是采用电流的形式进行输出的。如果需要相应模拟的电压信号,可以通过一个高输入的阻抗的线性运算的放大器来实现。 图7 DA转换电路3.4 恒流源电路设计恒流源电路的设计是本系统设计的核心,恒流源电路原理图如图8所示,它采用电压来控制电流的变化。为了能产生恒定的电流,我们采用电压闭环反馈控制。恒流源电路图如图7所示,该电路主要由运算放大器、大功率达林顿管、采样电阻、负载等组成。采样电阻RS由输出端进行采样,再和基准电压进行比较,将误差电压放大反馈至调整管,使得输出电压在电网的电压变动情况下仍可以保持稳定。该电路中调整管运用大功率达林顿管,既可以满足输出电流最大达到要求,又能较好实现电压能近似线性地进行控制电流。RS采用热稳定性较好的康铜丝,并选择较大阻值(2),使在电流较低的情况下也可以获得较大电压值。运算放大器运用高精度地OP27BJ做为电压跟随器。DAOUT为输入电压Ui,当Ui为一定值时,运算放大器Ui=US,I0=IL=IS=Ui/RS,即I0不随RL变化而发生变化,从而实现压控及恒流。由此得到恒流源输出电流的大小为:I0= Ui/RS图8 恒流源电路原理图3.5 键盘电路设计在设计中,使用标准的1x4键盘,可以实现09数字输入,“+”、“-”步进设置。其电路图如图所9示。仿真时,电路图中的四个按键,它们分别具有不同的功能,从左到右功能分别为“-10”、“-1”、“+1”、“+10”。当按下最右边的按键时,显示器的示数加十,当按下从右边数第二个按键时,显示器示数加一,当按下最左边的按键时,显示器的示数减十,当按下从左边数第二个按键时示数减一。其工作过程如下:键扫描:CPU先通过输出口使所有列线输出为低电平,然后从输入口读入所有行线的状态。若行线状态都为高电平,则说明没有键按下,若行线中有低电平,则表明有键被按下。键扫描的方式:CPU的控制一旦进入监控程序,将反复不断的扫描键盘,等待输入命令或数据。在初始化程序中对定时器/计数器进行编程,使之产生10ms的定时中断,执行中断服务程序,对键盘扫描一遍,检查键盘的状态,实现对键盘的定时扫描。当键盘上有按键按下时,由硬件电路产生中断请求,CPU相应中断,执行中断服务程序,判断按下的键的键号,根据键的定义作相应处理。 图9 键盘电路原理图3.6 显示电路设计在单片机应用的系统中,常常用LED数码管用作显示的输出设备。LED显示器尽管信息相对比较简单,却具有显示较清晰、亮度较高、使用的电压较低、寿命长、与单片机接口方便等特点,基本可以满足单片机系统的要求。LED数码管显示器是由发光二极管按一定的结构组合起来的显示器件。单片机的应用的系统至中经常使用的是8段式LED数码显示管,它有共阴极和共阳级两种结构。如图10所示。其中,图(a)为共阴极结构,8根二极管的阴极端连接在一起,使用时com端接地,阳极端分开,需要点亮哪根二极管,则此二极管的阳极端接高电平;图(b)为共阳极结构,8根二极管的阳极端连接在一起,使用时com端接电源,阴极端分开。需要点亮哪根二极管,则此二极管的阴极端接地。本系统所采用的是7SEG-MPX4-CA四个共阳二极管显示器1234是阳公共端。显示器电路的接口如下图11所示,在该设计中显示器的显示范围为0250,在主电路中,当仿真刚开始进行时,示数为零。当按下最右边的按键时,显示器的示数为十,当按下从右边数第二个按键时,显示器示数加一,当按下最左边的按键时,显示器的示数减十,当按下从左边数第二个按键时示数减一。a ab bc cd de ef fg gdp dp (a)共阴极 com (b)共阳极 com图10 8段式LED数码管结构 图11 LED显示电路原理图3.7 稳压电源设计电源电路原理图如图12所示,图中,T1为电源变压器,它的作用是将交流电网电压变成整流电路要求的交流电压,四只整流二极管接成电桥的形式,故有桥式整流电路之称。它是有电源变压器、整流、滤波和稳压电路等四部分组成。在本设计中,运放需±15V供电,单片机需、D/A需+5V供电,采用三端稳压器7805、78H15、79H15构成一稳压电源,题目要求输出电流范围是0mA250mA,而78H、79H系列稳压器输出电流最大可以达到5A,能为系统提供足够大的稳定电流。稳压电路如图所示:考虑系统对功率要求较高,所以在设计中选取了输出功率50W的变压器,输入电压由变压器和全波整流滤波电路产生。 图12 电源电路原理图3.8 系统整体电路图由以上各单元电路组成的整体电路如下图13所示:图13 系统整体电路图 4 系统软件设计4.1 系统流程图设计对于本系统的仿真,采用Proteus仿真软件来实现。Proteus是目前最好的模拟单片机外围器件的工具,Proteus软件具有其它EDA工具软件(例:multisim)的功能:(1)原理布图;(2)PCB自动或人工布线;(3)SPICE电路仿真。同时该软件建立了电子设计开发环境具有丰富的器件库;智能的器件搜索;智能化的连线功能;支持总线结构;可输出高质量图纸等。使用该软件进行单片机的系统仿真与设计,是虚拟的仿真技术与计算机多媒体技术相结合的综合运用,有利于培养我们的电路设计能力和仿真软件的操作能力。 Proteus软件介绍:它为英国Labcenter electronics 公司所出版的EDA工具的软件。它不仅仅有其它EDA软件仿真的功能,而且能够仿真单片机以及外围的器件。尽管目前在国内推广刚刚起步,但已经受到单片机的爱好者、从事单机教学的老师、致于单片机的开发与应用科技工作者青睐。Proteus为世界著名的EDA仿真软件,从原理图的布图、代码的调试至单片机以及外围电路的协同仿真,一键切换至PCB的设计,真正的实现从概念至产品完整的设计。它是目前世界上的唯一能将电路的仿真软件、PCB的设计软件以及虚拟的模型仿真软件进行三合一设计的平台,它处理器的模型能够支持AvR、ArM、8086以及MsP430等,并且持续增加其它系列的处理器的模型。在编译的方面,它也能支持 IAR、 Keil等多种的编译器。 革命性特点:互动的电路仿真:用户们甚至能够实时运用如LCD,键盘,马达,LED,AD/DA以及部分 SPI器件和部分 IIC器件。 能够仿真处理器以及其外围电路:能够仿真AVR、51系列、PIC等常用的主流的单片机。并且能够直接在原理图的虚拟的原型上进行编程,再者配合显示以及输出,可以看到运行后输入和输出地效果。再配合系统所配置虚拟的逻辑分析仪以及示波器等等器件,Proteus从而建立完整的电子设计与开发的环境。系统主要流程图如下图14所示:开始初始化扫描按键显示输入值按键处理图14 系统流程图相关程序如下:sbit key0=P34; /按键加粗调 加十sbit key1=P35; /按键加微调 加一sbit key2=P36; /按键减微调 减一sbit key3=P37; /按键减粗调 减十void delayms(u16 time) /延时一毫秒u16 i,j;for(i=0;i<time;i+)for(j=0;j<125;j+);void show(u16 numb) /数码管显示函数 u16 ge,shi,bai,qian; ge = numb%10;shi = numb/10%10;bai = numb/100%10;qian = numb/1000%10; a=0;b=0;c=0;d=1; P2=bianmage; delayms(2); P2=0xff; a=0;b=0;c=1;d=0; P2=bianmashi; delayms(2); P2=0xff; a=0;b=1;c=0;d=0; P2=bianmabai; delayms(2); P2=0xff; a=1;b=0;c=0;d=0; /P2=bianmaqian; P2=0xff; delayms(1);void main(void)u8 shezhidianliu=0;/定义设置电流变量while(1) if(shezhidianliu<=240)&&(key0=0) /粗调 加 show(shezhidianliu); /按键延时消抖if(shezhidianliu<=240)&&(key0=0)/再次检测按键按下 并确认是否溢出shezhidianliu=shezhidianliu+10;/将设置值加十while(!key0) /等待按键松开show(shezhidianliu); /数码管动态扫描 if(shezhidianliu>=10)&&(key3=0) show(shezhidianliu);if(shezhidianliu>=10)&&(key3=0)shezhidianliu=shezhidianliu-10; while(!key3)show(shezhidianliu); if(shezhidianliu<250)&&(key1=0) show(shezhidianliu);if(shezhidianliu<250)&&(key1=0)shezhidianliu=shezhidianliu+1;while(!key1)show(shezhidianliu); if(shezhidianliu>0)&&(key2=0) show(shezhidianliu);if(shezhidianliu>0)&&(key2=0)shezhidianliu=shezhidianliu-1; while(!key2)show(shezhidianliu); show(shezhidianliu); /显示设置电流 P1=shezhidianliu; /输出设置电流4.2 系统仿真与调试(1) 在Proteus软件环境中进行仿真,对按键进行操作,显示器中显示不同的数据,通过对以下两图的对比可以知道输出电流范围:0mA250mA。当仿真刚开始进行时,显示器的显示状态如图15所示,此时示数为零,对电路中的键盘进行多次操作,最后显示器的状态如图16所示,此时的示数为250。由此可知输出电流范围:0mA250mA。 图15 0mA示数图 图16 250mA示数图(2)仿真时,电路图中有四个按键,它们分别具有不同的功能,从左到右功能分别为“-10”、“-1”、“+1”、“+10”,和 (1)中一样对不同的按键进行不同的操作,通过显示器上显示的数据的对比,得出上述的功能,同时截下下面两图作为例子 。 当仿真刚开始进行时,示数为零,此时对从左边数第三个按键进行一次操作之后,显示器的示数如图17所示为1,然后对从左边数第二个按键进行一次操作之后,显示器的示数重新归零;这时对最右边的按键进行一次操作之后,显示器的示数如图18所示为10,紧接着对最左边的按键进行一次操作之后,显示器的示数重新归零。 图17 1mA示数图 图18 10mA示数图从上面仿真图对比可以看出:(1)输出电流范围为0mA250mA; (2)具有“+”、“-”步进调整功能,步进10mA。综上所述,本设计方案完全满足任务要求。测量数据:LED显示器和电流表的示数分别用i1和i2表示根据数据得出下面表格:表1 两表的示数i1/mA1210207080100i2/mA1.232.2310.220.270.180.1100分析上表的数据可知,设定值与实际值之间存在一定的误差,取样电阻采用了低温度系数的锰铜,但是由于其上消耗功率,会引起自身温度的变化,从而对其精度产生一定影响。进行电路仿真时,一刚开始仿真出现很多问题,以为方案设计有问题,就又换了好几种方案,结果以仿真,结果误差还是很大。后来经过多方调试,才发现是我自己的Proteus有问题,于是又重新安装了仿真软件,用刚开始设计的方案进行仿真,仿真结果与实际设计相符合。5 总结5.1 设计小结在本次设计的过程中,遇到了许多困难和意料之外的事情,设计进度比较慢。首先是控制部分方案问题,一刚开始设计的是采用MSP430F169为核心的单片机来做,因为其内自带A/D、D/A,这样就省去了在外围电路设计A/D、D/A模块了。可是到了仿真这一步的时候才发现,Proteus里面没有这款芯片,也没有与之类似的。所以权衡考虑后还是改了方案,这样可以实现仿真。硬件电路设计完之后,就是软件加仿真了。进行电路仿真时,一刚开始仿真出现很多问题,以为方案设计有问题,就又换了好几种方案,结果以仿真,结果误差还是很大。后来经过多方调试,才发现是我自己的Proteus有问题,于是又重新安装了仿真软件,用刚开始设计的方案进行仿真,仿真结果与实际设计相符合。5.2 收获体会还有设计中碰到的各种小问题就不在这里一一详说了,虽然设计中出现了各种困难,各种纠结,但通过仔细的分析和进行多方面的调整后解决了问题。从中我提高了自身的综合能力,在此对在本次设计中给过我帮助的同学表示衷心的感谢。 这次课程设计使我掌握了很多实践知识,在老师和同学的帮助下对单片机有了进一步的了解。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,进而提高自己的实际动手能力和独立思考的能力。5.3 展望随着单片机技术的发展,数字控制电流源开始出现,其以控制灵活、调节方便等特