版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘 要 随着电子技术的发展、数字电路应用领域的扩展,人们对数控恒定电流器件的需求越来越高。应社会发展的需求,对基于单片机控制的“数控恒流电流源”进行研究论证,并运用Proteus软件进行仿真。设计由两大模块组成:单片机应用系统模块; 大功率压控电流源模块。设计采用AT89S52单片机应用系统,由TLC2543对精密电阻康铜丝的电压进行监控,由LTC1456直接控制输出电压,单片机、A/D、D/A三者组成控制系统,形成闭环回路,保持恒流。电流源采用4×4矩阵键盘进行设定,并采用LCD显示界面。运用Proteus软件仿真,实现输出电流范围为200mA2000mA,满足步进10mA,误差的
2、绝对值 1% +10mA,可以同时显示电流的给定值、仿真测试值、负载电压值、负载电阻值。关键词:电流源;稳压电源;AT89S52;LCD显示;ProteusABSTRACTThe requiements of numerical controlling constant current devices is increasing as development of electronic technology and expanding of digital circuit applicational field. As to satisfy society development, do a
3、study based on "numerical controlling constant current power" of SCM controlling and apply Proteus to simulating software. This design includes two module: SCM application system module; superpower voltage controls current power module. This design adopts AT89S52 SCM application system, mo
4、nitoried by precision resistance constantan wire voltage corresponding of TLC2543 and controlled and putout voltage directly by LTC1456, which three aspects consist of controlling system and being closed loop circuit to keep constant cuurent. Current souce adopts 4×4 matrix keyboard to set and
5、LCD display interface. Applying Proteus simulation software to realizing the range of output current as 200mA2000mA satisfies stepping 10mA, the error's absolute value 1% +10mA and displaying set-value, simulation values, load voltage value and load load resistance value of current simultaneousl
6、yKey words Current source;Manostat ;AT89S52;LCD display;Proteus45 / 49文档可自由编辑打印目 录1 前言11.1 数控直流电流源的发展现状11.2 数控直流电流源的研究意义21.3 该研究解决的主要内容22 设计任务及要求42.1 设计任务42.2 发挥部分42.3 设计思路42.4 方案论证42.5 总体方案设计63 硬件系统的设计73.1 硬件系统的模块73.1.1 单片机最小系统73.1.2 自制电源模块93.1.3 显示模块103.1.4 键盘模块123.1.5 电流源模块133.1.6 负载模块143.1.4 D/A
7、、A/D转换模块153.2 系统的原理图174 软件系统的设计184.1 单片机资源使用情况184.2 软件系统的模块184.2.1 定时模块184.2.2 按键操作模块184.2.3 D/A转换模块194.2.4 A/D转换模块194.2.5 LCD显示模块194.3 程序流程图194.3.1 主控制流程图194.3.2 按键操作流程图204.3.3 D/A转换、A/D转换流程图214.3.4 数制转换流程图224.3.5 LCD显示流程图224.4 程序清单235 仿真测试及结果245.1 设计结论及使用方法245.2 仿真结果245.2.1 输出电流范围仿真245.2.2 步进调整仿真2
8、65.2.3 输出电流仿真265.2.4 仿真软件的介绍275.3 误差分析28结束语 29参考文献30致谢31附录321 前言1.1 数控直流电流源的发展现状 电源技术尤其是数控电源技术是一门实践性很强的工程技术,服务于各行各业。电力电子技术是电能的最佳应用技术之一。当今电源技术融合了电气、电子、系统集成、控制理论、材料等诸多学科领域。随着计算机和通讯技术发展而来的现代信息技术革命,给电力电子技术提供了广阔的发展前景,同时也给电源提出了更高的要求。随着数控电源在电子装置中的普遍使用,普通电源在工作时产生的误差,会影响整个系统的精确度。电源在使用时会造成很多不良后果,世界各国纷纷对电源产品提出
9、了不同要求并制定了一系列的产品精度标准。只有满足产品标准,才能够进入市场。随着经济全球化的发展,满足国际标准的产品才能获得进出的通行证。数控电源是从80年代才真正的发展起来的,期间系统的电力电子理论开始建立。这些理论为其后来的发展提供了一个良好的基础。在以后的一段时间里,数控电源技术有了长足的发展。但其产品存在数控程度达不到要求、分辨率不高、功率密度比较低、可靠性较差的缺点。因此数控电源主要的发展方向,是针对上述缺点不断加以改善。单片机技术及电压转换模块的出现为精确数控电源的发展提供了有利的条件。新的变换技术和控制理论的不断发展,各种类型专用集成电路、数字信号处理器件的研制应用,到90年代,己
10、出现了数控精度达到0.05V的数控电源,功率密度达到每立方英寸50W的数控电源。从组成上,数控电源可分成器件、主电路与控制等三部分。目前在电力电子器件方面,几乎都为旋纽开关调节电压,调节精度不高,而且经常跳变,使用麻烦。数字化智能电源是针对传统电源的不足设计的,数字化能够减少生产过程中的不确定因素和人为参与的环节数,有效地解决电源模块中诸如可靠性、智能化和产品一致性等工程问题,极大地提高生产效率和产品的可维护性。数控直流电流源是一种常见的电子仪器,广泛的用于电子电路,教学实验和科学研究等领域。目前实用的直流电流源大部分是线性电源。利用分离器件组成,其体积大,功率底,可靠性差,操作使用不方便,自
11、我保护功能不够,因而故障率高。随着电子科技的飞速发展,各种电子,电器设备对电源的性能要求日益提高,电源不断差朝着小型化,高效率,低成本,高可靠性,低电磁干扰,模块化和智能化发展。因此,数控直流电流源今后的发展目标之一就是不进要在性能上做到效率高、噪声低、高次谐波低、既节能又不干扰环境,还要在功能上力求实现数控化、多功能化、智能化、网络化。1.2 数控直流电流源的研究意义数控直流电流源是我们生活中比较常见的设备,这次设计就是基于单片机为主体所设计的微机数字触发式直流电流源,相比其他以往的电源设计,此次的课题更新颖,更符合技术发展的潮流。设计中,对整体电源进行了硬件、软件总体设计,从两方面满足设计
12、的基本要求的同时,对整个微机控制的系统有了比较全面的了解。传统的直流电流源通常采用电位器和波段开关来实现电压的调节,并由电流表指示电流值的大小。因此,电流的调整精度不高,读数欠直观,电位器也易磨损。而基于单片机控制的直流电流源能较好地解决以上传统电流源的不足。数控直流电流源采用键盘,可对输出电压进行设置, 输出由单片机通过D/A,控制驱动模块输出一个稳定电压,之后转换成相应的电流。工作过程中,数控直流电流源的输出电流等各种工作状态均由单片机输出驱动LCD显示,由键盘控制进行动态逻辑切换。以单片机为核心的智能化高精度直流电流源的设计,直流电流源采用数字调节、输出精度高,特别适用于各种有较高精度要
13、求的场合。以单片机系统为核心而设计制造出来的新一代数控直流电流源不但电路简单,结构紧凑,价格低廉,性能卓越,而且单片机具有计算和控制功能,利用它对采样技术进行各种计算,从而可排除和减少由于骚扰信号和模拟电路因起的误差,大大提高稳压电源输出电压精度,降低了对模拟电路的要求。数控直流电流源可利用单片机设置周密的保护检测系统,确保电源运行可靠。电源采用数字控制,具有以下明显优点:易于采用先进的控制方法和智能控制策略,使电源模块的智能化程度更高,性能更完美;控制灵活,系统升级方便,甚至可以在线修改控制算法,而不必改动硬件线路;控制系统的可靠性提高,易于标准化,可以针对不同的系统,采用统一的控制板,而只
14、是对控制软件做一些调整即可。在日常生活中,需要用到各种电源,数控直流电流源的研究,更好的适应了社会的发展。1.3 该研究解决的主要内容本次对数控直流电流源的设计主要是针对以下方面:如何实现对电源的输出控制,该系统主要是应用单片机,用微处理器来替代传统直流稳压电源中手动旋转电位器,实现输出电压的连续可调,精度要求高。实现的途径很多,可以用DAC的模拟输出控制电源的基准电压或分压电阻,或者用其它更有效的方法,因此如何选择简单有效的方法是本课题需要解决的首要问题;数控直流电流源要实现电流的键盘化输出控制,同时对于输出的电流的精度也具有相应的要求,如何有效的实现这些功能也是课题所需研究解决的问题。数控
15、直流电流源的输出电流稳定的问题,在本设计中也是要解决的问题。对于数控直流电流源的输出显示问题,本设计中式采用LCD进行显示。该数控直流电流源还有一个讨论的问题,就是对于数控直流电流源输出的电流进行采样,然后进行处理的问题。在本次数控直流电流源的设计中,这也是一个比较重要的问题。2 设计任务及要求2.1 设计任务(1)、输入交流电压200240V,50Hz;输出直流电压10V。(2)、输出电流范围:200mA2000mA;(3)、可设置并显示输出电流给定值,要求输出电流与给定值偏差的绝对值给定值的1+10 mA;(4)、具有“+”、“-”步进调整功能,步进10mA;(5)、改变负载电阻,输出电压
16、在10V以内变化时,要求输出电流变化的绝对值输出电流值的1+10 mA;(6)利用proteus软件对整体电路进行仿真验证。2.2 发挥部分(1)输出电流范围为200mA2000mA,步进1mA;(2)设计、制作测量并显示输出电流的装置 (可同时显示电流的给定值和实测值),测量误差的绝对值测量值的0.1+3个字;(3)改变负载电阻,输出电压在10V以内变化时,要求输出电流变化的绝对值输出电流值的0.1+1 mA;(4)纹波电流0.2mA;(5)其他。2.3 设计思路采用改进型的单输出端单向电流源电路来产生恒定电流。该方法是用精密电阻取样得到反馈电压,将反馈电压与高精度的参考电压比较得到误差电压
17、,此误差电压经放大后输出控制调整管的导通程度,使预设电流值和实测电流值的逐步逼近,直至相等,从而达到数控的目的。从题目的要求来分析,该题目最大的难点在于大电流输出和高精度控制,所以在具体的方案确定中,大电流、功耗,以及精度、误差等都是我们所必须要考虑和克服的。2.4 方案论证对于数控直流电流源的设计有很多方案,下面做一下介绍:方案一:方框图如图1所示,数控直流电流源由键盘、控制器、显示器、数模转换、电压电流转换和模数转换等部分组成,键盘的作用是设定电流值和确定电流步进值;控制器的作用是将设定电流值的8位(或12位)二进制输出;显示器的作用是显示设定电流值;数模转换的作用是设定电流值的数字量转换
18、为模拟量;电压电流转换的作用是将电压转换成恒定电流输出;模数转换的作用是将输出的模拟量再转换为数字量反馈到控制器,使实际输出电流值与设定电流值一致。图1 方案一的方框图方案二:方框图如图2所示,采用改进型的单输出端单向电流源电路来产生恒定电流。该方法是用精密电阻取样得到反馈电压,将反馈电压与高精度的参考电压比较得到误差电压,此误差电压经放大后输出控制调整管的导通程度,使预设电流值和实测电流值的逐步逼近,直至相等,从而达到数控的目的。从题目的要求来分析,该题目最大的难点在于大电流输出和高精度控制,所以在具体的方案确定中,大电流、功耗,以及精度、误差等都是我们所必须要考虑和克服的。图2 方案二方框
19、图2.5 总体方案设计方案一的数控直流电流源设计比较简单,对于电流的变化是采用相比而言使用可编程芯片,如CPLD或FPGA等和DAC控制,采用LED数码管进行实时显示,操作也比较方便。方案二的数控直流电源设计采用单片机作为核心控制,基本原理简单,实现比较方便,电源的电流值也可以调整到较精确的数值,同样的也是采用LCD进行显示。此方案采用保持电阻恒定而改变输入电压的方法来改变电流的大小。利用高精度D/A转换器在单片机程序控制下提供可变的高精度的基准电压,该基准电压经过V/I转换电路得到电流,再通过A/D转换器将输出电流反馈至单片机进行比较,调整D/A的输入电压,从而达到数控的目的。该方案的难点在
20、于稳定恒流源的设计和高精度电流检测电路的设计。特点是可精确的控制电流的步进量,负载变化对电流输出的影响较小。根据题目要求以及设计思路,比较之后,基于以上优点以及对于单片机的成熟应用,因此我决定用单片机来作为控制器,我所采用的是第二种方案。3 硬件系统的设计3.1 硬件系统的模块3.1.1 单片机最小系统(1) 时钟电路单片机必须在时钟的驱动下才能工作.在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡
21、频率主要由石英晶振的频率确定。电路中石英晶体振荡器的频率为12MHz,两个电容 C1、C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1、C2的典型值为33PF。单片机的时钟电路如图3所示。图3 单片机的时钟电路图(2) 复位电路单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态。复位电路用于产生复位信号,通过RST引脚送入单片机,进行复位。因为AT89S52单片机的复位是靠外部电路实现的。复位电路的好坏直接影响单片机系统工作的可靠性,因此,要重视复位电路的设计和研究。只要RST端保持10ms以上的高电平
22、,就能使单片机有效地复位。AT89S52单片机通常采用上电自动复位、按键复位、以及上电加按键复位等,我们采用的是上电加按键复位方式,这样做的优点是上电后可以直接进入复位状态,当程序出现错误时,可以随时使电路复位。则复位电路图如图4所示。图4 单片机复位电路图(3) AT89S52单片机AT89S52是一种带8K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89S52单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。此单片机共有4个8位的并
23、行双向I/O口,分别记作P0、P1、P2、P3,这4个口除可按字节寻址以外,还可按位寻址。P0口地址为80H,位地址为80H87H。各位口线具有完全相同但又相互独立的逻辑电路。P1口地址为90H,位地址为90H97H。P1口只能作为通用数据I/O口使用,所以在电路结构上与P0口有些不同。P2口地址为A0H,位地址为A0HA7H。P2口既可以作为系统高位地址线使用,也可以为通用I/O口使用,所以P2口电路逻辑与P0口类似。P3口地址为B0H,位地址为B0HB7H。虽然P3口可以作为通用I/O口使用,但在实际应用中它的第二功能信号更为重要。P3口的第二功能如表1所示。AT89S52单片机还有一个地
24、址锁存控制信号ALE,外部程序存储器读选通信号,访问程序存储器控制信号,复位信号RST,地线和+5V的电源。单片机最小系统图如图5所示。表1 P3口线第二功能 口 线 第二功能信号 第二功能信号名称 P3.0 RXD 串行数据接收 P3.1 TXD 串行数据发送 P3.2 INT0 外部中断0申请 P3.3 INT1 外部中断1申请 P3.4 T0 定时器/计数器0计数输入 P3.5 T1 定时器/计数器1计数输入 P3.6 外部RAM写选通 P3.7 外部RAM读选通图5 单片机最小系统图3.1.2 自制电源模块本系统需要多个电源,单片机使用+稳压电源,A/D转换器,D/A转换器,运放等需要
25、稳压电源。电源虽简单,但在高精度的系统中,稳压电源有着非常重要的作用。在进行研究后得出以下方案。如图6所示,本电源先通过变压器电压变换隔离,桥式全波整流,电容滤波,再通过三端固定输出集成稳压器产生稳定电压+15V,-15V,+5V,稳压器内部电路由恒流源,基准电压,取样电阻,比较放大,调整管,保护电路,温度补偿电路等组成。为了改善纹波特性,在输入端加接电容。为了改善负载的瞬态响应,在输出端加接电容。采用三端集成稳压器7805、7815、7915分别得到+5V和±15V的稳定电压,再外对OP07加大功率场效应管构成扩流电路,可以提供2000mA的上限电流。利用该方法实现的电源电路简单,
26、工作稳定可靠。稳压电源在实物上设计上是必不可少的部分,但在运用Proteus仿真时为了简化电路,此模块用软件自带的励磁电压代替。图6 稳压电源电路图3.1.3 显示模块方案一:使用LED数码管显示。数码管采用BCD编码显示数字,对外界环境要求低,易于维护。但根据题目要求,如果需要同时显示给定值和测量值,以及其他输出特性值,需显示的内容较多,要使用多个数码管动态显示,使电路变得复杂,加大了编程工作量。方案二:使用LCD液晶显示。LCD具有轻薄短小,可视面积大,方便的显示数字,分辨率高,抗干扰能力强,功耗小,且设计简单等特点。LM016L液晶模块采用HD44780控制器,hd44780具有简单而功
27、能较强的指令集,可以实现字符移动,闪烁等功能,LM016L与单片机MCU通讯可采用8位或4位并行传输两种方式,hd44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROMA(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。IR用于寄存指令码,只能写入不能读出,DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据,BF为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,DDTAM用来存储显示的字符,能存储80个字符码,CGROM由8位字
28、符码生成5*7点阵字符160中和5*10点阵字符32种.8位字符编码和字符的对应关系,CGRAM是为用户编写特殊字符留用的,它的容量仅64字节,可以自定义8个5*7点阵字符或者4个5*10点阵字符,AC可以存储DDRAM和CGRAM的地址,如果地址码随指令写入IR,则IR自动把地址码装入AC,同时选择DDRAM或CGRAM,LM016L液晶模块的引脚功能如下表2所示。表2 LM016L引脚功能引脚符号功能说明1VSS一般接地2VDD接电源(+5V)3V0液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
29、4RSRS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。5R/WR/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6EE(或EN)端为使能(enable)端,下降沿使能。7DB0底4位三态、 双向数据总线 0位(最低位)8DB1底4位三态、 双向数据总线 1位9DB2底4位三态、 双向数据总线 2位10DB3底4位三态、 双向数据总线 3位11DB4高4位三态、 双向数据总线 4位12DB5高4位三态、 双向数据总线 5位13DB6高4位三态、 双向数据总线 6位14DB7高4位三态、 双向数据总线 7位(最高位)(也是busy flang)15BLA
30、背光电源正极16BLK背光 电源负极综上所述,选择方案二。采用LM016L液晶显示模块同时显示电流给定值和实测值以及负载内阻。连接电路图如图7所示。图7 LM016L与单片机的接线图3.1.4 键盘模块方案一:采用独立式按键电路,每个按键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式。缺点为当按键较多时占用单片机的I/O口数目较多。方案二:采用标准4×4键盘,此类键盘采用矩阵式行列扫描方式,优点是当按键较多时可降低占用单片机的I/O口数目,而且可以做到直接输入电流值而不必步进。题目要求可进行电流给定值的设置和步进调整,需要的按键比较多。综合考虑
31、两种方案及题目要求,采用方案二,使用标准的4x4键盘,可以实现09数字输入、“+”、“-”、“OK”、“SET”、“DEL”、“RESET/ON”这些功能按键。其电路图如图8所示。图8 键盘与单片机的接线图 3.1.5 电流源模块方案一:采用集成稳压器运放构成的线性恒流源。如图9所示。D/A输出电压作为恒流源的参考电压,运算放大器U1与晶体管Q1,Q2组成的达林顿电路构成电压跟随器。利用晶体管平坦的输出特性即可得到恒流输出。由于跟随器是一种深度的电压负担亏电路,因此电流源具有较好的稳定性。本电流源的稳定度优于0.5%。为了提高稳定度,Rs采用大线径康铜丝制作,康铜丝温度系数很小,大线径可以使其
32、温度影响减至最小。U1采用精密运算放大器OP37A,该放大器有调节零点漂移的功能,Q1采用9014大倍数大约为400.Q2采用低频功率管3DD15,他的放大倍数为1020倍,漏电流很小。Q1的加入是为了增加复合管的放大倍数。图9 稳压器运放线性恒流源模块电路图方案二:采用运放和场效应管的压控恒流源。电路原理图如图10所示。该恒流源电路由运算放大器、大功率场效应管Q1、采样电阻R2、负载电阻RL等组成硬件设计。采用场效应管,更易于实现电压线性控制电流,既能满足输出电流最大达到2A的要求,电路简洁也能较好地实现电压近似线性地控制电流。此电路中,为了满足题目的设计要求,调整管采用大功率场效应管IRF
33、640。当场效应管工作于饱和区时,漏电流Id近似为电压Ugs控制的电流。即当Ud为常数时,满足:Id=f(Ugs),只要Ugs不变,Id就不变。在此电路中,R2为取样电阻,采用康铜丝绕制(阻值随温度的变化较小)阻值为1。运放OP07作为电压跟随器,Uin=Up=Un,场效应管Id=Is(栅极电流相对很小,可忽略不计) 所以Iout=Is= Un/R2= Uin/R2。正因为Iout=Uin/R2,电路输入电压UI控制电流Iout,即Iout不随RL的变化而变化,从而实现压控恒流。图10 压控恒流源模块电路图综上所述,进行综合比较,方案二电路较简单,稳定性较高,故采用方案二,使用高精度运放和大功
34、率场效应管等构成一个恒流源电路。3.1.6 负载模块根据题目要求,设计了如图11所示的电路图。电路综合各方面的考虑因素在里面,由于TLC2543所测电压值在5V内,而负载一端接15V电压源另一端接功率管,因此采用差分增益电路采样负载电压,当Rb/Rc=Rd/Ra时,OP07输出电压ADin=Rb/Rc(Va-Vb),硬件设置Rb/Rc=1/4,软件还原负载电压,保证测量精度。而采样精密电阻R1为1,通过采样R1两端电压值换算成电流值即可得到输出电流。图11 负载电流、电压测量电路图3.1.4 D/A、A/D转换模块D/A、A/D模块是单片机与外部数据连接的通道,因此这两个模块的选择与使用应当合
35、理。(1)D/A转换器 本设计中应采用DAC模块提供高精度的基准电压,即通过CPU发出的二进制转换为的模拟电压,送给误差放大器,实现步进要求。根据题目扩展功能要求输出,以1mA为步进,需要的级数由公式(1)可见。 (1),故应采用12位D/A转换器为D/A转换芯片,供选择的很多,在此选用proteus元件库中的LTC1456芯片。其内部结构电路图如图12所示。 图12 TLC1456内部结构电路图(2)A/D转换器A/D模块的是反馈的核心,我们采用Proteus元件库中的TLC2543芯片实现。TLC2543是一种低功耗、低电压的12位串行开关电容型AD转换器。它使用逐次逼近技术完成A/D转换
36、过程。最大非线性误差小于1LSB,转换时间9µs。它具有三个控制器输入端,采用简单的3线SPI串行接口可方便与微机进行连接,是12位数据采集系统的最佳选择器件之一。TLC2543引脚功能如表3所示,其特点如下: 11个模拟输入通道;3路内置自测试方式;采样率为66kbps; 线性误差±1LSBmax; 有转换结束输出EOC; 具有单、双极性输出; 可编程的MSB或LSB前导; 可编程输出数据长度。表3 LTC2543引脚功能引脚号名称I/O说明19,11,12AIN0AIN10I模拟量输入端。11路输入信号由内部多路器选通。对于4.1MHz的I/OCLOCK,驱动源阻抗必须
37、小于或等于50,而且用60pF电容来限制模拟输入电压的斜率15I片选端。在端由高变低时,内部计数器复位。由低变高时,在设定时间内禁止DATAINPUT和I/O CLOCK17DATAINPUTI串行数据输入端。由4位的串行地址输入来选择模拟量输入通道16DATA OUTOA/D转换结果的三态串行输出端。为高时处于高阻抗状态,为低时处于激活状态19EOCO转换结束端。在最后的I/OCLOCK下降沿之后,EOC从高电平变为低电平并保持到转换完成和数据准备传输为止10GNDGND是内部电路的地回路端。除另有说明外,所有电压测量都相对GND而言18I/O CLOCKI输入/输出时钟端。I/OCLOCK
38、接收串行输入信号并完成以下四个功能:(1)在I/O CLOCK的前8个上升沿,8位输入数据存入输入数据寄存器。(2)在I/OCLOCK的第4个下降沿,被选通的模拟输入电压开始向电容器充电,直到I/OCLOCK的最后一个下降沿为止。(3)将前一次转换数据的其余11位输出到DATA OUT端,在I/OCLOCK的下降沿时数据开始变化。(4)I/OCLOCK的最后一个下降沿,将转换的控制信号传送到内部状态控制位14REF+I正基准电压端。基准电压的正端(通常为Vcc)被加到REF+,最大的输入电压范围由加于本端与REF-端的电压差决定13REF-II 负基准电压端。基准电压的低端(通常为地)被加到R
39、EF- 20Vcc电源(3)D/A、A/D连接电路D/A 、A/D连接电路如图13所示。图13 D/A、A/D连接电路图3.2 系统的原理图在本次毕业设计中,所绘制的系统原理图采用的是Proteus软件。其系统原理图见附录所示。4 软件系统的设计4.1 单片机资源使用情况本设计用到了单片机控制DA和AD转换的功能,此外用到了单片机的中断功能,在数据的显示时所采用的是查表的方法,因此需要将表格、数据存到单片机的程序存储器中去。数控直流电流源的数据要存储到数据存储器中去,用到了30H到50H之间的单元。由于数控直流电流源需要可以进行调节,因此,需要在单片机的P口上加上按键,本设计采用行列式键盘,直
40、接接在P2口上。用到的液晶显示器接到了单片机的P0口线上,液晶显示器的使能端用到了P3口线。4.2 软件系统的模块4.2.1 定时模块在本设计中用到了几个定时模块,第一个定时是用于定时按键的抖动时间,因为当按键时都会出现电压抖动,但对键盘工作有影响的是键闭合时的抖动,所以为了确保键扫描的正确性,每当扫描到有闭合键时,都要进行去抖动处理。本设计中采用的是软件去抖动的方法,抖动的定时采用的软件的延时进行定时的。第二个定时的功能是在数码管显示时的延时时间,即在数码管显示时是采用查表的方法进行显示的,因此需要用到一定的延时,使得我们能够看的清楚所显示的内容,在这里用到的延时也是采用软件的延时。4.2.
41、2 按键操作模块在本次设计中,我用到了三个独立式键盘进行按键的操作。因为本数控直流电流源的操作比较简单,而只用到了三个键,因此在键盘的操作时采用的是层层递进的方法,一步一步往下操作的,设置了键的名称为ON/OFF键、ADD键、DEC键,在软件设计中是在ON/OFF键按下了之后才会有ADD键、DEC键的操作,键与键之间的功能采用层层套用使得程序看起来更加清晰明了。在按键的程序扫描中是采用查询的方法对按键进行操作的,当查询到按键有动作时,则执行相应的操作。独立式键盘的程序设计一般把键盘扫描程序设计成子程序,以便其它各程序调用。本设计中的键盘扫描子程序的名称为KEY,则键盘扫描子程序KEY应具有以下
42、功能:判定有无按键动作;去抖动;确认是否真正有闭合键;计算并保存闭合键键码;判定闭合键是否释放;恢复闭合键键码。4.2.3 D/A转换模块本设计主要是利用单片机做处理器,然后经过数模转换模块进行转换,将单片输出的二进制代码转换成相应的模拟电压输出,这样使得所设计的电流源更加精确。在此模块中,因为进行换挡的转换,在这里我所采用的是做除法,然后再存储除法得到的商和余数,这里面我用到了两个子程序,一个是将十进制转换为十六进制数,二个是采用移位相减的方法做除法。4.2.4 A/D转换模块当所设定的二进制代码经过数模转换模块输出之后,经过A/D转换模块进行采样之后,由单片机进行处理。然后输出相应的电流值
43、大小。4.2.5 LCD显示模块寄存器选择控制表如表4所示。表4 寄存器选择控制表RSR/W操作说明00写入指令寄存器(清除屏等)01都busy flag(DB7),以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据注:关于E=H脉冲开始时初始化E为0,然后置E为1,再清0。busy flag(DB7):在此位为被清除为0时,LCD将无法再处理其他的指令要求。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写
44、的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。因为1602识别的是ASCII码,试验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如“A”。4.3 程序流程图4.3.1 主控制流程图在此次设计的过程中,我是采用模块的设计方法,一个一个实现功能,可以说如果完成了一个任务的程序框图,就是完成了整个设计任务的百分之三十左右,在本次课程设计的过程中,我都是采用这种思想进行数控直流电流源的设计的。因此,在设计的过程,让我能够很轻易的就抓住了主要的设计核心。主控制流程图如图14所示。图14 主控制流程
45、图4.3.2 按键操作流程图在本次程序设计中对于键盘的设计,我专门设计了一个键盘扫描子程序,它所完成的功能是,首先对键盘进行处理,给每一个键都设置了一个键码,那么只要判断键盘的键码就可以知道是否有键按下,如若有键按下也可以判断是哪一个键按下了。这次设计中,键盘扫描子程序的代号为KEY,其键盘扫描程序设计的流程框图如图15所示。图15 按键扫描子程序流程图4.3.3 D/A转换、A/D转换流程图本设计主要是用到LTC1456进行数模转换,用到TLC2543进行模数转换,其转换的流程图如图16所示。 图16 D/A转换、A/D转换流程图4.3.4 数制转换流程图由于使用的十进制数,而在做除法的时候
46、,要进行数制的转换,其转换的流程图如图17所示。图17 数制转换流程图4.3.5 LCD显示流程图由于本设计的显示比较简单,因此我所用到的是LCD显示,其LCD显示的流程图如图18所示。 图18 LCD显示子程序流程图4.4 程序清单所设计的程序清单见附录。5 仿真测试及结果5.1 设计结论及使用方法本次通过对数控直流电流源的设计,了解了利用单片机处理之后,进行数控直流电流源的显示。本次设计比较成功,在按键操作中能够按照预先给定的功能进行操纵。打开Proteus软件,打开设计的电路文件,然后输入通过KEIL软件编好的程序,点击开始按钮即可以进行测试。具体操作说明:按了复位键之后,液晶显示屏上也
47、能显示“S0200mA"。按下RESET/ON键显示四项值,包括电源设定值、电流AD测量值、负载电压值、负载阻值。电流设定初始值为200mA。可以按+,-键实现步进,数据实时显示。要设置电流直接按数字键无效。此时需按SET键进入电流设置,之后屏幕显示 “Are you sure to set?”,按下OK键即可设定,如果不需要设定,按RESET/ON返回。在设定电流的过程中,需要有效按四次数字键,如果在设置的过程中想放弃修改,按下RESET/ON键,如果需要修改已经按下的数值,可以按DEL键,光标返回到上一个数,重新按某一个数字键即完成修改。设置完成后屏幕显示相应值。操作显示界面如图
48、19所示。如果设定的电流值不在200mA2000mA内屏幕显示 “ERROR! RESET”。图19 仿真显示器显示界面图5.2 仿真结果5.2.1 输出电流范围仿真由于在程序设计上限制了电流输出范围是202000mA,限定了电压值小于10V,当给定值在量程内时显示“OK!”;当给定值超过量程时将显示“ERROR! RESET!”,如下图20所示。图20 仿真报错显示界面图若需要设定输出电流值,当按下SET键时,出现如图21所示界面,显示器显示“Are you sure to set?”,此时按下OK键,出现如图22所示界面,这是可自由输入一个4位数,若满足2002000mA,则显示各种数据,
49、若不满足2002000mA,则显示器出现“ERROR!RESET!”报警画面。若发现输入数字超出电流允许范围,可以按SET键再次输入数值。图21 输出电流值确认SET显示界面图图22 输出电流值SET显示界面图5.2.2 步进调整仿真在量程范围内,通过“”、“”按钮可实现1mA步进,通过显示器可观察到效果。通过键盘DEL键可以修改上一步输错的数字。如图23所示。图23 修改设定的输出电流值界面图5.2.3 输出电流仿真下图24所示是仿真最低电流200mA负载电阻为2.0时的状态,根据显示器显示内容可知,设定输出电流值为200mA,实测电流值为201mA,输出电压为0.400V,负载电阻为2.0
50、,都满足设计要求。然后,通过改变设定输出电流值进行仿真,记录的仿真数据如表5所示。图24 负载电阻为2.0仿真状态图表5 负载RL=2.0的数据表格给定值(mA)200300400500800100015001980电流AD测值(mA)201301401501800100015001980误差绝对值11110010负载电压(V)0.4000.6290.8391.4091.6792.0993.1494.155负载阻值()2.02.02.02.02.02.02.12.0运用同样的仿真步骤,依次仿真负载电阻为3.0、4.3时这两种状态,记录的仿真数据分别如表6、表7所示。表6 负载RL=3.0的数据
51、表格给定值(mA)200300400500800100015001980电流AD测值(mA)201300401501800100015001980误差绝对值10110000负载电压(V)0.6000.8981.2011.4992.3972.9984.4975.937负载阻值()3.03.03.03.03.02.93.03.0表7 负载RL=4.3的数据表格给定值(mA)200300400500800100015001980电流AD测值(mA)201301400501800100015001980误差绝对值11010010负载电压(V)0.8591.2891.7184.1483.4374.296
52、6.4508.510负载阻值()4.24.34.24.34.34.24.34.25.2.4 仿真软件的介绍在仿真时用到了两个软件,第一个是Keil,第二个是Protues,本次仿真是将两个软件结合起来进行的。Proteus 软件所提供了30多个元件库,数千种元件。元件涉及到数字和模拟、交流和直流等。对于一个仿真软件或实验室, 测试的仪器仪表的数量、 类型和质量, 是衡量实验室是否合格的一个关键因素。在Proteus软件包中,不存在同类仪表使用数量的问题。Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似但功能更多。Proteus IS
53、IS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。提供软件调试功
54、能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。单片机电路的模拟调试选中单片机AT89S52,左键点击AT89S52,在出现的对话框里点击Program File按钮,找到刚才编译得到的HEX文件,然后点击“OK”按钮就可以模拟了。点击模拟调试按钮的运行按钮 ,进人调试状态。我们还可以单步模拟调试,点击按钮,进人单步调试状态, 在单步模拟调试状态下,点击菜单栏的“Debug”,点击Simulation Log会出现和模拟调试有关的信息。总之,利用此两软件的有效结合使得数控直流电流源能够在模拟的环境下进行。因此,可以让我在制作实物
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 诉讼案件处理经验总结
- 房地产开发业会计工作总结
- 网上购物系统课程设计jsp
- 茶叶店销售员工作总结
- 工业行业保安工作总结
- 电子商务行业行政后勤工作总结
- 电影影视销售心得体会
- 玻璃制品生产招标合同三篇
- 劝退员工合同(2篇)
- 创新项目保密协议书(2篇)
- 管线管廊布置设计规范
- 提升教练技术--回应ppt课件
- 招聘与录用选择题
- 《工资、薪金的个人所得税的计算》教学设计
- 精品洲际酒店集团皇冠酒店设计标准手册
- 周视瞄准镜的初步设计-北京理工大学-光电学院小学期作业
- Writing写作教学设计
- 心房起搏电极的位置选择ppt课件
- 四川省南充市2019-2020学年九年级上期末数学试卷(含答案解析)
- 上海市宝山区2019届高三英语一模含答案
- 《数与形》教学反思
评论
0/150
提交评论