




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
兰州工业高等专科学校毕业论文摘 要恒流源,是一种能够向负载提供恒定电流的电源。恒流源的应用范围非常广泛,并且在许多情况下是必不可少的。本文设计了一种基于单片机控制的数控直流恒流源。该恒流源以AT89S52为控制核心,采用了高共模抑制比低温漂的运算放大器OP07和达林顿管TIP122构成恒流源的主体,配以高精度采样电阻及12位D/A芯片MAX532、16位A/D芯片AD7715,完成了单片机对输出电流的实时检测和实时控制。人机接口采用44键盘及LED数码管显示器,控制界面直观、简洁,具有良好的人机交互性能。在软件设计上采用增量式PID控制算法,即数字控制器的输出只是控制量的增量。该系统已基本达到预期的设计目标,具有功能强、性能可靠、体积小、电路简单的特点,可以应用于需要高稳定度的小功率恒流源的领域。关键词:恒流源;AT89S52;PID控制算法;数字控制。 The abstract Constant current, is one kind can provide the constant current to the load the power source.The constant current application scope is extremely widespread, and in many situations is essential.This article has designed one kind the numerical control cocurrent constant current which controls based on the monolithic integrated circuit. This constant current take AT89S52 as the control core, has used operational amplifier OP07 and Darington which Gao Gongmu the rejection ratio low temperature floats manages the TIP122 constitution constant current the main body, matches by the high accuracy sampling resistance and 12 D/A chip MAX532, 16 A/D chip AD7715, has completed the monolithic integrated circuit to the output current real-time examination and the real-time control. The man-machine connection uses 44 the keyboard and the LED nixietube monitor, the control interface is direct-viewing, is succinct, has the good man-machine interaction performance.Uses the increase type PID control algorithm in the software design, namely the digital controller output only is controls the quantity the increase.This system had achieved basically the anticipated design goal, has the function strongly, the performance reliable, the volume small, the electric circuit simple characteristic, may apply in needs the high stability the low power constant current domain.Key word: Constant current; AT89S52; PID control algorithm; Numerical control. 目录第1章 绪论5第2章 系统的总体设计62.1 设计指标要求62.2 总体方案的选取及系统62.2.1 方案一:62.2.2 方案二:7第3章 系统的硬件设计83.1 单片机的功能介绍83.1.1 主要功能特性:83.1.2 引脚功能说明83.1.3 时钟电路及复位电路113.2 恒流源基本设计原理与实现方法133.2.1 引起稳定电源输出不稳定的主要原因133.2.2 恒流源的基本设计原理143.2.3 系统电源设计153.3 A/D 模块选择163.3.1 AD7715简介163.3.2 硬件电路设计183.4 D/A 模块选择193.4.1 MAX532简介193.4.2 硬件电路设计213.5 键盘接口电路设计223.5.1 键盘工作方式233.5.2 接口电路设计233.5.3 按键抖动及消除243.6 显示器接口电路设计25第4章 系统的软件设计274.1 控制算法274.2 软件流程图294.2.1 主程序流程图294.2.2 键盘中断子程序304.2.3 显示中断子程序31第5章 总结33致 谢34参考文献35附录A 总电路图36第1章 绪论恒流源,是一种能向负载提供恒定电流之电路。一般而言,按照恒流源电路主要组成器件的不同,可分为三类:晶体管恒流源、场效应管恒流源、集成运放恒流源,下面分别予以说明。1 、晶体管恒流源这类恒流源以晶体三极管为主要组成器件,利用晶体三极管集电极电压变化对电流影响小,并在电路中采用电流负反馈来提高输出电流之恒定性.通常,还采用一定的温度补偿和稳压措施。由晶体管构成的恒流源,广泛地用作差动放大器的射极公共电阻,或作为放大电路的有源负载,或作为偏流使用,也可以作为脉冲产生电路的充放电电流,由于晶体管参数受温度变化影响,大多采用了温度补偿及稳压措施,或增强电流负反馈的深度以进一步稳定输出电流。2 、场效应管恒流源场效应管恒流源较之晶体管恒流源,其等效内阻较小,但增大电流负反馈电阻,场效应管恒流源会取得更好的效果.且无需辅助电源,是一个纯两端网络,这种工作方式十分有用,可以用来代替任意一个欧姆电阻。通常,将场效应管和晶体管配合使用,其恒流效果会更佳。3 、集成运放恒流源由于温度对集成运放参数影响不如对晶体管或场效应管参数影响之显著,由集成运放构成的恒流源具有稳定性更好,恒流性能更高之优点。尤其在负载一端需接地,要求大电流的场合,获得了广泛应用。第2章 系统的总体设计2.1 设计指标要求(1)输出电流范围:200mA2000mA;(2)可设置并显示电流给定值,要求输出电流与给定值偏差的绝对值给定值的1%+10mA;(3)具有“+”、“”步进调整功能,步进10mA;(4)改变负载电阻,输出电压在10V以内变化时,要求输出电流变化的绝对值输出电流值的1%+10mA;(5)纹波电流2mA。2.2 总体方案的选取及系统2.2.1 方案一:利用FPGA作为控制器,以它为中心设计外围电路,并利用D/A转换形成闭环回路。本方案电路复杂,灵活性不高,效率低,不利于系统的扩展,对信号处理比较困难。系统框图如图2-1所示。显示器键盘控制器数模转换模数转换电压电流转换 2-1 系统框图 2.2.2 方案二: 本课题要设计的基于单片机控制的直流恒流源,以直流稳压电源和稳流电源为核心,结合单片机最小系统实现对输出电流的控制。首先采用了单片集成稳压芯片实现直流稳压,然后采用了分立元件实现稳流。为实现对输出电流的控制:一方面,通过D/A输出实现电流的预置,再通过运算放大器控制晶体管的输出电流;另一方面,运用A/D转换器件将输出电流的采样值送入单片机,与预置值进行比较,将误差值通过D/A转换芯片添加到调整电路,从而进一步降低了输出电流的纹波。该系统输出电流范围较大,并且输出电流与给定值偏差的绝对值及纹波电流较小,具有功能强、性能可靠、体积小、电路简单的特点,分为以下几个组成部分:单片机控制系统、A/D和D/A转换模块、恒流源模块、负载、键盘及显示模块,系统框图如图2-2所示。单 机机控制系统A/DD/A恒流源主电路负载键盘控制LED显示图2-2 系统框图比较以上两种方案的优缺点,方案二简洁、灵活、可扩展性好,能达到题目的设计要求,因此采用方案二来实现。第3章 系统的硬件设计3.1 单片机的功能介绍3.1.1 主要功能特性:(1)兼容MCS-51指令系统(2)32个双向I/O口(3)3个16位可编程定时/计数器(4)全双工UART串行中断口线(5)2个外部中断源(6)中断唤醒省电模式(7)看门狗(WDT)电路(8)灵活的ISP字节和分页编程(9)8k可反复摖写(1000次)ISP Flash ROM(10)4.5-5.5V工作电压(11)时钟频率0-33MHz(12)2568bit内部RAM(13)低功耗空闲和省电模式(14)3级加密位(15)软件设置空闲和省电功能(16)双数据寄存器指针AT89S52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其他功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP、和PLCC三种封装式,以适应不同产品的需求。3.1.2 引脚功能说明本课题采用ATMEL公司的AT89S52单片机作为控制系统的核心。AT89S52是一个低功耗、高性能CMOS 8位单片机,引脚图如图3-1所示。图 3-1 AT89S52 引脚图(1)主电源引脚VCC:+5V电源端GND:接地端(2)输入/输出引脚P0端口(P0.0P0.7):P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0可用作多路复用的低字节地址/数据总线。在这种模式下,P0具有内部上拉电阻。在对flash存储器行编程时,P0口用于接收指令字节;在程序校验时,输出指令字节;这时需要外部上拉电阻。P1端口(P1.0P1.7):P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作输为入使用时,被输入信号拉低的引脚由于内部上拉电阻的原因,将输出电流IIL。此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如表3-1所示。在flash编程和校验时,P1口接收低8位地址字节。表3-1 P1端口第二功能口线第二功能信号名称P1.0T2定时器/计数器T2的外部计数输入,时钟输出P1.1T2EX定时器/计数器T2的捕捉/重载触发信号和方向控制P1.5MOSI在系统编程用P1.6MISO在系统编程用P1.7SCK在系统编程用P2端口:P2口也是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,输入信号拉低的引脚由于内部上拉电阻的原因,将输出电流IIL。在访问外部程序存储器或用16位地读取外部数据存储器(例如执行MOVXDPTR)时,P2口送出高八位地址。在这种应用中,P2口使用强的内部上拉发送1。在使用8位地址(如MOVXRI)访问外部数据存储器时,P2口输出P2锁存器内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3端口:P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电基于单片机控制的直流恒流源的设计对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被输入信号拉低的引脚由于内部上拉电阻的原因,将输出电流IIL。P3口亦作为AT89S52特殊功能(第二功能)使用,如表3-2所示。在flash编程和校验时,P3口也接收一些控制信号。表3-2 P3端口第二功能口线第二功能信号名称P3.0RXD串行输入P3.1TXD串行输出P3.2INT0外部中断 0P3.3INT1外部中断 1P3.4T0定时器 0 外部输入P3.5T1定时器 1 外部输入P3.6WR外部数据存储器写选通P3.7RD外部数据存储器读选通(3)控制信号引脚RST:复位输入端。晶振工作时,RST引脚的输入高电平有2个机器周期就会对单片机复位。看门狗计时完成后,RST引脚输出96个晶振周期的高电平。特殊寄存器 AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/:地址锁存控制信号。存取外部程序存储器时,这个输出信号用于锁存低8位地址。在对flash存储器编程时,此引脚也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用作外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,会跳过一个ALE脉冲。在需要时,可以将地址为8EH的SFR寄存器的第0位置为“1”,从而屏蔽ALE的工作。而只有在MOVX或MOVC指令执行时ALE才被激活。在单片机处于外部执行方式时,对ALE屏蔽位置“1”并不起作用。:外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而在访问外部数据存储器时,的两次激活会被跳过。/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。为了执行内部程序指令,应该接VCC。在flash编程期间,EA也接收12伏VPP电压。(4)振荡器引脚XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。3.1.3 时钟电路及复位电路AT89S52中有一个构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路如图3.2 a)图所示。外接石英晶体(或陶瓷谐振器)及电容C1,C2接在放大器的反馈回路中构成并联振荡电路。对外电容C1,C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作稳定性、起振的难易程度及温度的稳定性。如果使用石英晶体,电容使用30pF士l0pF,如果使用陶瓷谐振器,电容使用40pF士l0pF。用户也可以使用外部时钟。采用外部时钟的电路如图3-2 b)图所示。在这种情况下,外部时钟脉接到XTAL1端,即内部时钟发生器的输入端,XTAL2端悬空。由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空没有特殊要求,但最小高电平持续时间和最大低电平持续时间应符合产品技术条件的额定要求。本课题用到的晶振频率为12MHz。本课题所用的时钟电路如图3-2 a)图所示。a)内部振荡电路b)外部振荡电路+图3-2 AT89S52振荡电路复位是单片机的初始化操作。其主要功能是将程序计数器PC初始化为0000H,使单片机从0000H单元开始执行程序。在运行中,外界干扰等因素可使单片机的程序陷入死循环状态或跑飞。为摆脱困境,可将单片机复位,以重新启动。复位也使单片机退出低功耗工作方式而进入正常工作状态。RST引脚是复位信号的输入端,高电平有效。其有效时间应持续24个振荡周期(即两个机器周期)以上。振荡周期就是晶振的振荡周期。复位电路图如图3-3所示。图3-3 复位原理图3.2 恒流源基本设计原理与实现方法3.2.1 引起稳定电源输出不稳定的主要原因稳定电源的输出电量(电压或电流),是相对稳定而非绝对不变的,它只是变化很小,小到可以在允许的范围之内。产生变化的原因是多方面的,主要有以下四个因素:(1)电网输入电压不稳定所致。电网供电有高峰期和低谷期,不可能始终稳定如初;(2)由负载变化形成的。如果负载短路,负载电流会很大,电源的输出电压会趋于接近于零,时间一长还会烧坏电源;如果负载开路,没有电流流过负载,输出电压就会升高。即使不是这两种极端情况,负载电阻有微小的变化也会引起稳定电源输出电量的变化14;(3)由稳定电源本身条件促成的。构成稳定电源的元器件质量不好,参数有变化或完全失效时,就不可能有效地调节前两种原因引起的波动;(4)元器件因受温度、湿度等环境影响而改变性能也会影响稳定电源的输出不稳。一般地说,稳定电源电路的设计首先要考虑前两种因素,并针对这两种因素设计稳定电源中放大器的放大量等。在选择元器件时,要重点考虑第三个因素。但在设计高精度稳定电源时,必须要高度重视第四个因素。因为在高稳定电源中,温度系数和漂移这两个关键的技术指标的好坏都是由这个因素所决定的。3.2.2 恒流源的基本设计原理图 3-4 恒流源主电路图恒流源电路如图3-4所示,由于D/A转换输出的模拟信号不稳定,加上C3稳定电压。经过3.6K的电阻和1K的电位器加到单运放OP07的同相输入端,调节电位器的阻值的大小可调节同相输入端的电位,从而改变输出点的电位,输出电位加到达林顿管的B管脚上,进入达林顿信号产生自激信号,通过C1过滤掉。利用达林顿管的电流放大特性,可实现大电流的输出。电流放大倍数为100015000倍。Ic=Ib由于值很大则 IcIb,那么IcIe改变达林顿B管脚的电位可改变达林顿管集电极C管脚的电流。达林顿管E管脚和地之间接一个功率电阻也是采样电阻,采用0.43欧姆大功率康铜丝电阻,具有功率大、受热情况下阻止改变不大,把达林顿管的E管脚和OP07的反相输入端相连,使功率电阻的电位送到OP07,来钳位达林顿管基极B管脚的电位。E管脚电压需要采集送到单片机处理,接C2使采集电压更加稳定。E管脚电压Uf =IeR5U=UD/A-Uf当通过达林顿管的集电极C和发射极E上的电流变大时,功率电阻上的电压升高,U为负值,则B管脚的电位降低,从而使流过达林顿管的集电极C和发射极电流降低。当通过达林顿管的集电极C和发射极E上的电流变小时,功率电阻上的电压降低,U为正值,则B管脚的电位升高,从而使流过达林顿管的集电极C和发射极电流升高,当U为零时电流稳定不变,由此来达到恒流的目的。恒流源原理图如图3-5所示。负载集电极电流Ic发射极电流Ie负反馈Uf 基极电流IbIc=Ib图3-5恒流源原理图3.2.3 系统电源设计 输出电压为+15V、-15V、和+5V的原理图如图3-5所示。 图3-5 输出电压原理图3.3 A/D 模块选择3.3.1 AD7715简介AD7715是美国ADI公司生产的16位模数转换器。它具有0.0015%的非线性、片内可编程增益放大器、差动输入、三线串行接口、缓冲输入、输出更新速度可编程等特点。适用于单通道低速小信号的采样应用,其功能框图如图3-6所示。图3-6 AD7715的功能框图1、引脚功能AD7715的引脚排列如图3-7所示。 图3-7 AD7715的引脚图各引脚的功能如下:SCLK:串行时钟、逻辑输入;MCLK IN:器件的主时钟信号。可由晶振提供,也可由与CMOS兼容的时钟驱动,此时MCLK OUT引脚悬空。无论采用哪一种时钟,其频率必须是1MHz或2.4576MHz;MCLK OUT:当器件的主时钟信号由晶振提供时此引脚与 MCLK 1N 引脚和晶振两引脚相连。如果MCLK IN为外部时钟引脚,MCLK OUT引脚能提供一个反向的时钟信号,供外电路使用;:片选信号,逻辑低有效;:逻辑输入,低电平有效。有效时,可将片内的控制逻辑、接口逻辑、校准系数、数字滤波器以及模拟调制器复位到上电状态;AVDD:模拟正电源,AD7715-3为3V,AD7715-5为5V;AIN+、AIN-:模拟输入,分别为片内可编程增益放大器差动模拟输入的正、负端;REF IN(+):参考输入,AD7715 参考差动输入的正端,该端电位必须大于REF IN(-),并REF IN(+)可连接在AVDD与AGND之间;REF IN(-):参考输入,AD7715参考差动输入的负端,REF IN(-)可连接在AVDD和AGND之间,但REF IN(-)必须小于REFIN(+);AGND:模拟地,正确操作时,其它引脚的电压相对AGND应不低于-30mV;:逻辑输出。低电平表明来自AD7715数据寄存器新的输出字是有效的。当完成全部 16 位的读操作时,此引脚变成高电平。在输出更新期间,如果没有数据被读出,此引脚将持续500倍Tclkin时钟周期,然后返回高电平。当为高时,不能进行读操作,或者说,当数据正在更新时,应当避免从数据寄存器中读数。数据更新结束后,将再次返回低电平;DOUT:从片内输出移位寄存器中读出串行数据的串行输出端。此输出移位寄存器可含有来自设定寄存器、通讯寄存器或数据寄存器的信息,具体是哪一个寄存器,取决于通讯寄存器中的寄存器设定位;DIN:写到片内输入移位寄存器串行数据的串行输入端。此数据是移到设定寄存器还是通讯寄存器,取决于通讯寄存器中的寄存器设定位;DVDD:数字电源,正常情况是+3V或+5V;DGND:数字地。3.3.2 硬件电路设计为了实现输出电流的实时测量,使用16位的AD7715对输出电流进行采样测量,16位的A/D可以很精确的测量出输出电流,并输出显示,用户可以在LED显示器上看见两个电流值:其一为预置的电流值;其二为输出电流的实测值。正常工作时两者的相差很小,一旦出现异常状况,用户可以看出期望值不符,从而采取相应的措施。A/D转换电路如图3-8所示。图3-8 A/D转换电路图3.4 D/A 模块选择3.4.1 MAX532简介MAX532是一种带有输出放大器的双路串行12位电压输出数字-模拟转换器(DAC),其接口能与标准的SPI、QSPI和MICROWIRE接口标准兼容,采用12-15V之间的电源供电,所有输入端口与TTL和CMOS兼容。1.功能特性(1)双路带有输出放大器的12位数模转换器(2)高速6MHz三线接口(3)SPI、QSPI和MICROWIRE接口(4)电压输出范围:12V(5)电流输出范围:10mA(6)在温度范围内单调变化(7)整体非线性程度低,小于1/2LSB (8)工作电压范围:12V、15V(9)较低的温度增益 2ppm/ 0C(10)内部上电复位2.引脚定义MAX532的引脚如图3-9所示:图3-9 MAX532引脚图各管脚如下定义: RFBA:DACA的反馈电阻 VREFA:DACA的参考电压输入 VOUTA:DACA电压输出 AGNDA:DACA模拟地 AGNDB:DACB模拟地 VOUTB:DACB电压输出 VREFB:DACB的参考电压输入 RFBB:DACB的反馈电阻 VSS:负电源 DGND:数字地SCLK:串行时钟输入 DOUT:串行数据输出DIN:串行数据输入 CS:芯片选择,低电平有效 LDAC:异步加载 DAC 输入,低电平有效 VDD:正电源3.MAX532的读写时序MAX532内部有一个24位的移位寄存器,高12位B通道的DAC数据,低12位为A通道的DAC数据,MSB数据位在前。当片选信号/CS为低电平时,数据在时钟信号SCLK的上升沿被锁入;当片选信号/CS为高电平时,数据不能被读入至DIN,同时DOUT为高阻抗状态。SCLK的频率可达6.25MHz。控制器通过串行输入三字节的数据来给出两通道12位DAC寄存器(DACA、DACB)的数字值。串行数据先被锁定至DACB的数据寄存器,然后再至DACA、MSB数据位在前。当片选信号CS为低电平时,数据在时钟信号SCLK的上升沿被锁入;当片选信号CS为高电平时,数据不能被读入至DIN,同时DOUT为高阻抗状态。SCLK的频率可达6.25MHz。MAX532有三线和四线两种接口方式:1、三线接口方式使用CS、DIN、SCLK引脚,LDAC始终接低电平,DAC随着片选信号CS升至高电平时同步更新。2、四线接口方式往往用于多个串行器件连接到同一数据线时。当LDAC变为低电平时,所有串行器 件同步更新。3.4.2 硬件电路设计D/A转换电路如图 3-10 所示,在正电源 VDD 和负电源 VSS 上也加上了两个滤波电容,一个 10F 的电解电容和一个 0.1F 的独石电容,不但可以稳压,还可以使电源纹波小,使芯片工作时性能好,输出的波形更加稳定。图 3-10 D/A 转换电路图这里的D/A作用是把代表一定电压的数字量转换成相应的模拟电压值。电路选用的D/A转换芯片是12位的MAX532。12位可输出4096级电压。MAX532需外接基准电压,其基准电压的性能决定了输出电压的性能,要求具有高稳定度。本电路采用AD587提供10V基准电压,D/A转换电路满幅为10V。 D/A的转换分辨率为mV即CPU输给D/A 数据变化1bit,电压变化为2mV。3.5 键盘接口电路设计键盘是单片机应用系统最常用的输入设备,操作人员可以通过键盘向单片机系统输入指令、地址和数据,实现简单的人机通信。 键盘与单片机的接口包括硬件与软件两部分。硬件是指键盘的组织,即键盘结构及其与主机的连接方式。软件是指对按键操作的识别与分析,称为键盘管理程序。不同的键盘组织其键盘管理程序存在很大的差异,但任务大体可分为下列几项:识键:判断是否有键按下。若有,则进行译码;若无,则等待或转做别的工作。译键:识别出哪一个键被按下并求出被按下键的键值。按键分析:根据键值,找出对应的处理程序的入口的键值。3.5.1 键盘工作方式在单片机应用系统中,扫描键盘只是CPU的工作任务之一。在实际应用中要想做到既能及时响应键操作,又不过多占用CPU的工作时间,就要根据应用系统中CPU的忙闲情况选择适当的键盘工作方式。键盘的工作方式一般有编程扫描方式(查询方式)和中断扫描方式两种。 1.编程扫描方式 CPU对键盘扫描可以采用程序控制的随机方式调用键盘扫描子程序响应键输入要求;也可以采用定时控制方式,即每隔一定时间调用键盘扫描子程序响应键输入要求。 2.中断扫描方式 采用编程扫描工作方式能及时响应键入的命令或数据,但是这种方式不管键盘上有无键按下,CPU总要定时扫描键盘,而应用系统工作时,并不需要键输入,因此,CPU经常处于空扫描状态。为了提高CPU的工作效率,本系统采用中断扫描工作方式。即只有在键盘上有键按下时发中断请求,CPU响应中断请求后,转中断服务程序,进行键扫描,识别键码。3.5.2 接口电路设计该键盘直接由单片机的P0口的高、低字节构成44矩阵式键盘。键盘的列线与P0口的低4位相接,键盘的行线通过二极管接到P0口的高4位。因此,P0.4P0.7作键扫描输出线;P0.0P0.3作键输入线。图中的四输入端与门,就是为中断扫描方式而设计的。其输入端分别与各列线相连,输出端接外部中断输入INT0。初始化时,使键盘行输出口全部置零。当有键按下时,INT0端为低电平,向CPU发出中断申请。若CPU开放外部中断,就响应中断请求,进入中断服务程序。在中断服务程序中执行扫描式键盘输入子程序。在本系统中需要用到“09”、“确认”、“取消”、“+”、“-”等按键。键盘与单片机的接口电路如图3-11所示。图 3-11键盘与单片机的接口电路3.5.3 按键抖动及消除键盘按键一般都采用触点式按键开关。当按键被按下或释放时,按键触点的弹性会产生抖动现象。即当按键按下时,触点不会迅速可靠地接通;当按键释放时,触点也不会立即断开,而是要经过一段时间的抖动才能稳定下来,抖动时间视按键材料的不同一般在5ms 10ms 之间。 键抖动可能导致单片机将一次按键操作识别为多次操作,为了保证CPU对键的一次闭合仅作一次键输入处理,必须消除抖动影响。 通常消除抖动影响的措施有硬、软件两种。在硬件上采取的措施是:在键输出端加 R-S 触发器或单稳态电路构成去抖动电路。在软件上采取的措施是:在检测到有键按下时,执行一个 10ms 左右的延时程序后,再确认该键电平是否保持闭合状态电平。若仍保持闭合状态电平,则确认该键处于闭合状态,从而消除了抖动影响。3.6 显示器接口电路设计系统的显示器件多采用发光二极管LED和液晶显示器LCD,本设计采用发光二极管LED作为系统的显示器件。本系统显示驱动器选用的是 MAX7219。MAX7219是美国MAXIM公司生产的紧凑型、串行输入、输出、共阴极LED显示驱动器。它一片芯片可以驱动多达8位7段LED显示器,其片内包含有一个BCD码到B码译码器、多路复用扫描电路、段和位驱动器及存贮每个数字的88固态RAM。只需一个外部电阻来设置所有LED段电流。可用一个方便3串行接口连接到各种通用的微处理器上。MAX7219允许用户对每个数字选择BCD码译码或不译码。MAX7219与单片机的接口方式有两种:一种是将MAX7219的三个输入端口DIN、CLK和LOAD直接与单片机的任意三个I/O口连接;一种则是直接与单片机的串行接口相连。本系统采用的第一种连接方式,显示电路如图3-11所示。从该图可以看出一片 MAX7219 只占用单片机的三个 I/O 口,这样可以节省很多硬件资源。本系统需要显示:预设置电流(4 位)、实际输出电流(4 位),共需 8 个数码管,而每片 MAX7219 可驱动 8 位数码管,所以选用一片 MAX7219 即可满足系统的需要。而且在Iset 端线和电源之间连接一个可调电阻Rset,通过调节Rset 的大小可以控制段电流,从而调节显示器亮度。显示驱动的硬件电路如图3-12所示。图3-12 显示驱动的硬件电路第4章 系统的软件设计4.1 控制算法比例、积分、微分控制(简称PID控制)是过程控制中应用最广泛的一种控制规律。控制理论可以证明,PID控制能满足相当多工业对象的控制要求。所以,它至今仍然是一种基本的控制方法。一个典型的PID单回路控制系统如图4-1所示。图中c是被控参数,r是给定值。图 4-1 PID单回路控制系统PID 调节器的基本输入输出关系可用微分方程表示为 (4-1)式中,u(t)调节器的输出信号;e(t)调节器的输入偏差信号,e(t)=r(t)-c(t);调节器的比例系数;TI调节器积分时间;TD调节器微分时间。 由于本系统属于一种采样控制,它只能根据采样时刻的差值来计算控制量。因此,在控制系统中,必须首先对式(4-1)离散化。用数字形式的差分方程代替连续系统的微分方程,此时积分项和微分项可用求和及增量式表示: (4-2) (4-3)将式(4-2)和式(4-3)代入式(4-1),可得离散的PID表达式: (4-4)式中,t=T采样周期,必须使T足够小,才能保证系统有一定的精度;e(n)第n次采样时的偏差值;e(n-1)第(n-1)次采样时的偏差值;n采样序号,n=0,1,2;u(n)第 n 次采样时调节器输出。式中的第一项起比例控制作用,称为比例(P)项,即时成比例地反映控制系统的偏差信号e(t),偏差一旦产生,控制器立即产生控制作用,以减少偏差。第二项起积分控制作用,称为积分(I)项,主要用于消除静差,提高系统的无差度。积分作用的强弱取决于积分时间常数T,T越大,积分作用越弱,反之则越强。第三项起微分控制作用,称为微分(D)项,能反映偏差信号的变化趋势(变化速率),并能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减小调节时间。U0是偏差为零时的初值。这三种作用可单独使用(微分作用一般不单独使用)或合并使用,常用的组合有:P控制、PI控制、PD控制和PID控制。由式(4-4)可以看出,要想计算u(n),不仅需要本次与上次的偏差信号e(n)和e(n-1),而且还要在积分项把历次的偏差信号e(i)进行相加,即e(i)。这样,不仅计算繁琐,而且还要为保存e(i)占用很多的内存。因此,用式(4-4)直接进行控制很不方便。为此我们做如下改动。根据递推原理,可写出(n-1)次的PID输出表达式: (4-5)用式(4-4)减去式(4-5),可得 (4-6) 式中,为积分系数;为微分系数。由式(4-6)可知,要计算第n次输出值u(n),只需知道u(n-1),e(n),e(n-1),e(n-2)即可,比用式(4-4)要简单得多。由于PID控制最初用在阀门和电机控制中,而式(4-4)的输出值与阀门开度的位置一一对应,因此,通常把式(4-4)称为位置PID的位置控制式。在这种控制算式中,由于是全量输出,所以每次输出均与原来位置量有关,为此,这不仅需要对e(i)进行累加,而且计算机的任何故障都会引起u(n)大幅度变化,对生产不利。由此产生了增量式PID控制的控制算法。所谓增量式PID是指数字控制器的输出只是控制量的增量u(k)。把式(4-5)和式(4-6)相减,得到: (4-7)增量式控制虽然只是算法上作了一点改进,却带来了不少优点:(1)算式中不需要累加。控制增量u(k)的确定仅与最近 3 次的采样值有关,容易通过加权处理获得比较好的控制效果;(2)计算机每次只输出控制增量,即对应执行机构位置的变化量,故机器发生故障时影响范围小、不会严重影响生产过程;在本课题中,经A/D转换电路采样所得的电压信号的值是PID控制的被控参数。4.2 软件流程图4.2.1 主程序流程图在系统加电后,主程序首先完成系统初始化,其中包括A/D、D/A、串行口、中断、定时/计数器等工作状态的设定,给系统变量赋初值,显示上次设定值等。然后扫描获取键值,判断设定键、校准键是否按下,执行相应的功能子程序。当启动键按下后,根据设定值、校正等参数计算对应输出的数字量,再进行闭环反馈调整,如图4-2所示。图4-2主程序流程图开始系统初始化开中断扫描键盘有键按下设置处理步进+处理步进+处理理确认处理数字处理调用显示中断子程序步
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 急诊护理科普大赛
- 电商平台消费者债权转让及清收服务协议
- 植物人离婚监护权及子女抚养权共享协议
- 医疗资源整合远程会诊项目合作协议
- 智能停车管理系统租赁与智能停车场运营管理及增值服务合同
- 医院洁净手术部BIM管线施工与运维协议
- 草原牧场放牧权竞标与草原生态修复协议
- 世界杯羽毛球赛赞助商协议
- 家居装修工程设计与施工合同
- 影视拍摄场地消毒卫生保障协议
- 储罐内喷铝施工方案
- 2024年江西省高考地理真题(解析版)
- 绍兴市粮食批发市场经营有限公司招聘笔试题库2024
- 毕业研究生登记表(适用于江苏省)
- 2024年光伏行业供应链数字化建设白皮书
- 网络传播概论(第5版)课件 第七章 网络传播建构的关系
- 公安机关拘留通知书(存根、附卷副本、正本)模板
- 【年产2000吨色氨酸发酵工厂的计算与设计(附布置图流程图)15000字(论文)】
- 2024-2030年中国动画产业发展趋势及未来前景预测分析报告
- 2024年中级硫磺回收装置操作工职业鉴定理论考试题库(浓缩500题)
- DL∕T 1917-2018 电力用户业扩报装技术规范
评论
0/150
提交评论