版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 课程设计题目 温度控制是工业控制对象中主要的被控对象之一。本设计被控对象是退火炉,被控参数是炉内温度。燃料为煤气,通过改变阀门的位置改变煤气的流量,从而改变炉内温度。炉温由热电偶控制。通过微机实现闭环控制。要求研究的内容如下:1.设计退火炉温度控制系统框图,选择各组成元件,参数的设定。2.设计不同算法的数字控制器对炉温进行闭环控制。3.设计开关功能,能进行CPU选择、监视定时器复位、EPROM扩展选择开关和手动复位开关等。4.设计LED键盘/显示板。能用来选定控制算法;显示、输入或修改参数并显示系统温度值。设计参数:退火炉温度检测范围是01000°C,炉温由热电偶检测元件检测
2、得到。第二章 总体方案2.1 设计背景退火炉是一种新型换热设备。广泛应用于化工、石油、食品、冶金、机械、轻工、电力、船舶、造纸、矿山、医药、集中供热等工业部门的加热、冷却、冷凝、蒸发等工艺过程中。由于其本身所具有的许多优点,使其在各行业中的应用越来越广泛。工业常用退火炉的发热体为电阻丝,常规方式大多采用模拟仪表测量温度,并通过控制交流接触器的通断时间比例来控制加热功率。由于模拟仪表本身的测量精度差,加上交流接触器的寿命短,通断比例低,故温度控制精度低,且无法实现按程序设定的升温曲线升温和故障自诊断功能。本文提出的退火炉以煤气为燃料,炉温控制系统采用多点棒形镍铬-镍硅热电偶为温度检测元件,利用高
3、性能采样/保持器及A/D转换器以获得较高的测温精度,并采用多路模拟开关对多路温度信号进行选择,利用两片MCS-51系列单片机8031(一主一辅)实现控制算法,按键盘设定值、所测温度值,自动进行温度控制,按程序设定温度曲线升温,并具有键盘输入及LED显示功能。另外,为提高系统工作的可靠性,本系统采用独特两片单片机(一主一辅),当主单片机出现故障时,自动切换至辅单片机工作状态,用以保证退火炉的正常使用。采用煤气比例控制阀对煤气流量进行控制,进而控制炉温。本文主要介绍利用单片机对退火炉的温度进行控制的闭环控制系统。下面介绍本系统的基本原理和组成。2.2 总体控制原理及系统组成 本系统主要由温度信号检
4、测电路、镍铬-镍硅热电偶、采样保持器、多路切换电路开关、信号放大器和A/D转换电路、晶体振荡电路、由两片单片机组成双CPU系统、两片扩展4K×8的EPROM程序存储器、LED显示板、4×6键盘、D/A转换器及运算放大器、反向多路切换电路及煤气比例阀门控制电路等组成。系统原理:通过在退火炉中的镍铬-镍硅热电偶检测到信号,传到采样保持器中进行输入前的保持,由多路切换电路开关选择检测哪一个点的温度,由此可将选择的信号传输到A/D转换电路中将模拟信号转换成数字信号输入两块8031单片机中,从监控电路采集的信号输入双CPU逻辑控制电路,通过控制输出电路中的三态门来选择哪个单片机的数据
5、输出到键盘及显示板中,以及输出到D/A转换器进行转换控制信号,再通过运算放大器放大信号,控制多路开关的开启和关闭来控制来自煤气源的比例控制阀控制煤气的流量进行改变炉温。温度检测元件有多种选择,常用的有热电偶、热电阻以及其他温度传感器。由于热电偶可以将被测温度直接转换成电势信号,便于远传、自动记录和实现自动控制,在工业中应用极为广泛。所以本系统采用热电偶为温度检测元件。由于所测的温度范围不同,所选用的热电偶材料及型号也不尽相同,目前的热电偶传感器有:铂铑10铂热电偶,其可在1100以下范围长期工作,符号S;镍铬镍铝(硅)热电偶,测量范围在-40+1200,符号K型;此外还有铂铑13铂热电偶(R型
6、),镍铬硅镍硅热电偶(N型),等等。本系统采用多点棒形镍铬-镍硅热电偶为温度检测元件,测温范围为-40+1200,允差值为2.5,满足控制系统设计要求。热电偶测量温度时要求其冷端(测量端为热端,通过引线与测量电路连接的端称为冷端)的温度保持不变,其热电势大小才与测量温度呈一定的比例关系。若测量时,冷端的(环境)温度变化,将影响严重测量的准确性。在冷端采取一定措施补偿由于冷端温度变化造成的影响称为热电偶的冷端补偿。本系统采用的冷端补偿电路如图1所示。图1 热电偶冷端补偿电路模拟信号进行A/D转换时,从启动转换到转换结束输出数字量,需要一定的转换时间,当输入信号频率较高时,会造成很大的转换误差。因
7、此,需要采用采样/保持器在A/D转换时保持住输入信号电平,在A/D转换结束后跟踪输入信号的变化。采样/保持器AD582由高性能运放、低漏电模拟开关和JEEP集成放大器组成,可以很好地完成这一功能。其结构如图2。 图2 采样/保持器AD582由于本系统有16路热电偶循环检测炉内温度,因此需要使用多路模拟开关将输入信号依次或随机接到公用放大器或A/D转换器上。本系统选用CC4067多路模拟开关,本芯片为单端16通道(16选1或1分16)多路模拟开关,有四个二进制输入端A0A3 和控制端EN,输入的任意一个组合可选择一路开关。图3为CC4067的引脚图和原理图,其主要参数有:1)导通电阻RON 30
8、0 欧,导通电阻温漂0.5,路间偏差4;2)开关时间: ton=0.8 s, tof=0.8 s;3)极限电源电压:VDD17V,Vss-17V。图3 CC4067的引脚图和原理图本系统采用3位半双积分A/D转换器MC14433进行A/D转换。该芯片抗干扰性强;输入电阻1000M;转换精度高;自动校零;自动极性输出;自动量程控制信号输出;动态字位扫描BCD码输出;单基准电压;转换率为110次/秒。采样/保持、多路切换及A/D转换电路工作过程为:首先,在8031的控制下,模拟信号采用保持器放大后进人多路模拟开关,在多路模拟开关选取输入信号后进入A/D转换器进行A/D转换。可见,该电路的作用是把1
9、6路热电偶拾取的信号进行采样、保持、放大,以及把模拟信号在单片机的控制下转换为数字信号。该电路原理图如图4所示。图4 采样/保持、多路切换及A/D转换电路原理图 为提高系统的可靠性,特别设计了一种双CPU控制系统。在该系统中,两个CPU彼此独立运行,可以自动或手动实现双机的主辅切换,只有主CPU能正常读写外部REPROM数据和控制输出数据,当主CPU发生故障时自动切换为辅CPU工作模式,从而大大提高了系统的可靠性。此外,由于8031接口及程序存储限制,还采用8155扩展I/O接口及EPROM扩展程序存储器。详细设计见下一章。由8031扩展I/O接口8155输出的信号为数字信号,不能直接用来控制
10、煤气阀门,故需采用D/A转换器进行D/A转换。DAC0832是8位分辨率D/A转换集成芯片,与处理器完全兼容,其价格低廉,接口简单,转换控制容易等优点,在单片机应用系统中得到了广泛的应用。本系统采用此芯片。图5是DAC0832的逻辑框图和引脚排列。图5 DAC0832的逻辑框图和引脚图DAC0832输出的是电流,一般要求输出是电压,所以还必须经过一个外接的运算放大器转换成电压。应用线路如图6所示。图6 DAC0832实际应用电路图 为了实现炉内温度的多点控制,本系统特别设计了与多路热电偶配合协调工作的多路煤气比例阀门系统。由D/A转换器DAC0832输出的0+5V电压信号输入到多路模拟开关CC
11、4067中,此多路模拟开关(记为B)与前述多路模拟开关(记为A)应用相反,即为1分16用法。且B的各路开关与A联合控制,比如,当A的第3路开关接通时,B的第3路开关同时接通,此时3号热电偶所测温度信号被选中,进入后续环节进行处理,所得电压信号进入接通了的B的第3路开关,从而控制3号煤气比例阀门开度,对3点温度进行控制。最终实现了炉内温度的多点分别控制,保证了大型退火炉炉内温度均匀一致。 最终执行环节由16路放大器及16个煤气比例阀门组成,通过改变煤气流量来调节炉温,分别对炉内16个热电偶测温点进行温度调节。键盘是由若干个键组成的开关矩阵,踏实最佳但的单片机输入设备,通过键盘输入数据或命令,实现
12、简单的人机对话。键盘上闭合键的识别是由专用硬件来实现的,称为编码键盘,靠软件实现的称为非编码键盘。在退火炉温度的单片机控制系统设计中,炉内温度由6位LED显示器显示,同时也可以通过键盘输入一定的温度值,通过LED显示器显示出来,并通过单片机系统控制退火炉内的温度,以保证钢材等所需的退火温度。退火炉温度控制系统的温度检测范围为01000,为了保证精度,保留小数点后一位有效数字,这样显示温度值可以由数字09,“”组成,如果一旦出现了输入错误,或需要修改温度值,则要设置修改键,同时还要设置键盘开启,关闭键,由于键盘向LED显示器输入数据,所以还应设置确定输入,数据显示等功能键。第三章 双CPU切换控
13、制电路工作原理单片微机具有小巧灵活、易扩展成为功能强大的控制系统。而Intel公司生产的MCS-51系列中的8031单片机是早期成熟的产品,体积小,功能全,面向控制,开发应用方便,是工业实时控制、智能控制、测控领域的首选,具有较高的性价比。因此在本双CPU控制系统中选用两片8031单片机作为控制核心。目前,一些监控终端以及许多独立的控制系统(如:发电机的微机励磁装置)多以单片机为核心构成。但由于诸如工作环境恶劣、电磁干扰等原因,即使使用按工业测控环境要求设计的单片机也难以保证控制系统能长期可靠的运行,从而导致控制系统瘫痪。这样,如何提高控制系统的可靠性,保证测控系统能正确稳定的运行就尤为重要。
14、为了克服完善设计无法解决这类高可靠要求的困难,允许故障存在,并能自动地消除其影响。显然,采用双CPU冗余设计是非常有效的一种解决办法。由于8031单片机的功能强大,价格低廉,为设计双机冗余系统提供了很好的条件。为此,我们设计了一种由两片单片微机组成的双机容错系统,以比较简单和与传统的多CPU系统完全不同思路的设计方法实现了双机的互为备用及相互切换。在该双机冗余系统设计中,其关键问题是双机系统的重构策略和双机系统的仲裁逻辑切换。3.1双CPU 切换控制系统的结构和工作原理该双CPU 切换控制系统由两片Intel公司生产的MCS-51系列单片机8031构成,双机互为备用,彼此独立并行运行,通过逻辑
15、电路切换。其双CPU 控制系统原理框图如图7所示。 图7双CPU 控制系统原理框图 这是一种非表决式的双机冗余系统,一个CPU作为另一CPU的热备份,双机在任务上同步运行。所有输入信号通过输入接口同时送给两个CPU,但CPU运算、处理后的输出量受到仲裁切换电路的控制,只有主CPU才能允许读写外部数据存贮器及输出至外部设备,当主CPU发生故障时,系统的自我检测切换逻辑将发出信号,自动切断其输出通道,并通过CPU 的工作指示系统报警。此时,系统或自动或人工切换到另一个备用的CPU,并同时打开其输出通道,备用机变为主机运行状态,控制系统这时降级为单机运行。人们可以将原主机拔离系统以便进行维修,同时,
16、保证了系统的正常运行。从图中可知,两个CPU 的地址、数据及控制总线都通过一组三态门(三态门1、2)输出与外部数据存贮器相接,两个CPU 的某些输出控制I/O 口都通过另一组三态门(三态门3、4)输出与外部输出控制设备相接,两组三态门的控制端都同时受仲裁切换电路控制,而仲裁切换电路的两路输出互为反逻辑,即只有一路输出能使所控制的对应三态门(如三态门1、3)正常输出,另一路输出使所控制的对应三态门(如三态门2、4)处于高阻状态,从而不影响主CPU 正常读写数据和向控制I/O 口输出数据。3.2 双CPU仲裁切换逻辑电路在该双CPU 控制系统中,两者互为热备份,同时运行,一台为主机,另一台为备份机
17、。在双CPU都正常运行的情况下,系统默认CPU1 为主机,CPU2 为备份机。当主机出现故障时,要求系统能自动切换到备份机,使备份机提升成为主机,从而代替原主机从故障发生处连续运行并发出报警信号。同时要求能通过手动开关人为选定主机运行。设判别两个CPU 是否正常工作的信号分别为ST1、ST2,工作正常时它们的状态为1,工作不正常时状态为0。仲裁切换电路输出为0 的控制端控制工作正常的CPU的相应三态门组允许输出,仲裁切换电路输出为1的控制端控制另一CPU的相应三态门组禁止输出。自动或手动选择主机的控制开关为S,当两个CPU 都工作正常时,可通过S 开关自动选择或指定主机(当S开关状态为1 时为
18、自动默认CPU1 为主机,当S开关状态为0 时则强制CPU2 为主机);当两个CPU中任意一个工作不正常时,则此时与S开关的状态无关,仲裁切换电路的输出能确保只有与工作正常的CPU相连的三态门组的使能端为0,从而控制该正常CPU正常读写数据和输出控制;当两个CPU 都不正常时,仲裁切换电路的两个输出都为1,两个CPU都不能正常读写数据和输出控制。这样当两个CPU 中任何一个或全正常时就能保证只有一个CPU能正常读写数据和输出控制,当两个CPU 都不正常时,则理所当然系统不能正常工作。按要求可得真值表如表1所示。表1 双CPU仲裁切换电路逻辑真值表由真值表可得仲裁切换电路的两路控制三态门的控制信
19、号逻辑CTL1、CTL2 分别为:构成的仲裁切换电路如图8所示。图8 双CPU仲裁切换逻辑电路3.3程序存储器的扩展 MCS-51单片机程序存储器的寻址空间为64KB,对于80518751片内程序存储器为4KB的ROM或EPROM,在单片机的应用系统中、片内的存储容量往往不够,特别是8031,片内没有程序存储器,必须外扩程序存储器。 扩展程序存储器常用芯片有EPROM(紫外线可擦除型),如2716(2KB)、2732(4KB)、2764(8KB)、27128(16KB)、27256(32KB)等,另外还有5V电擦除E2PROM,如2816(2KB)、2864(8KB)等等。1. 选择芯片原则
20、在选择程序存储器芯片时,首先满足程序容量,其次在价格合理情况下尽量选用容量大的芯片。芯片少,接线简单,芯片储存容量大,程序调整余量大。如估计程序总长4KB左右,最好扩展一片8KB的EPROM2764,留有一定的余量。另外,能用一片8KBEPROM2764则不要选2片2732(4KB),多一个芯片接线就复杂许多,且功耗增多,尽量减少扩展芯片个数使电路结构简单,提高可靠性。2. 本系统的程序存储器扩展的选择 选用8031单片机,程序总量3KB左右,考虑程序存储器的最小扩展系统。 分析:8031单片机内部无ROM,无论程序长短都必须扩展程序存储器,考虑本系统的程序量,扩展一片4KB的EPROM最合适
21、。 在存储器芯片扩展电路设计时,重点弄清地址线,数据线及控制线的连接方法。(1) 地址线 2732共12根地址线AOAll(212=4096B=4KB),低8位A0A7通过74LS373与P0接口连接,高四位A8A11直接与P2接口的P2.0P2.3连接,P2接口有锁存功能。(2) 数据线 2732数据线D0D7共8位直接与P0接口的P0.0P0.7相连。P0接口兼做数据线和低8位地址线。(3) 控制线 CPU对扩展芯片的控制通过控制线实现。图中地址锁存器74LS373的G端与8031的地址锁存允许端ALE连接。ALE作锁存扩展地址低位字节的控制端。2732的 输出使能端与8031的 (读选通
22、信号)端连接,在访问片外程序存储器时,只要此端出现负脉冲,即可从2732中读出程序。因为仅扩展一个芯片,片选端 接地即可, 端有低电平表示该芯片被选中。若扩展多片时还需要专门的片选电路。(4) 工作原理 当单片机从扩展程序存储器2732中读程序时,过程如下: 先由CPU送出地址低8位到PO接口,当锁存控制信号ALE的下降沿到来时则把低8位地址锁存到74LS373中,通过74LS373的输出端Q7Q0送至2732的低位地址A7A0端;高位地址经P2接口的P2.0-P2.3送到2732的A8All,这样所需程序地址被选中。在 读选通信号(低脉冲)有效期间则把该地址中的程序(指令或数据),经P0接口
23、读入单片机内部,准备执行。EPROM是只读存储器。3.4 软件实现本系统是两个单片机组成的双机系统。我们把上边甲机的普通片外RAM地址寻址空间分为0000H7FFFH和8000H0FFFFH两个不同的区域。其中,0000H7FFFH可作为普通片外RAM空间,8000H0FFFFH可作为数据传输通道。在这里,我们把8000H803FH的片外RAM寻址空间映射到右端乙机的0000H003FH的地址空间。(其实甲机8000H以上的任意地址都会映射到相应的乙机0000H 003FH空间。这里为简单起见,只用甲机的最高位地址线直接线选,并约定甲机的通信数据都往8000H803FH中写。)因此,
24、甲机端的低六位地址线通过74ALS373接到乙机端的低六位地址线。同时,读写控制线也接过来。两边的数据线通过74ALS245接起来以进行双向数据传输。不传数据时,乙机的P1.7为高电平,74ALS373处于高阻态,74ALS245也因为没有被甲机的地址线选通而呈高阻态,两边的CPU可以在自己的空间运行程序,保持相对独立。甲单片机P1.0接到乙机的INT0脚,可通知乙单片机做传输数据的相应处理,同时可以通过中断来唤醒处于ID状态的乙机。传数据时,乙机的P1.7为低电平,打开74ALS373,同时乙机的P1.7还接到甲机的INT0口,以通知甲机可以开始送数或取数。甲机最高位地址线A15作为数据选通
25、信号,使甲机端可以读写乙机端0000H003FH地址空间RAM中的数据。数据传送方向由乙机的P1.6脚进行控制。甲机要把数据传到乙机时,先通过P1.0输出一个下降沿脉冲到乙机的INT0口通知乙单片机,乙机中断服务程序判断是甲机要送数据过来,用指令MOV DPTR, #003FHMOV A, #0FFHMOVX DPTR 0FFH 把地址线置为003FH,P0口置为FFH。为什么要做这个工作呢?因为乙机把地址线置为003FH后,进入ID状态,地址线会保持这种状态,甲机就可以控制乙机的低六位地址线;同时乙机的高十位地址线保持为"
26、0",这样就确保了甲机的数据映射到乙机的0000H003FH的地址空间。乙机向数据线上写FFH,是保证把P0口都置?quot;1",进入ID工作方式后,P0口(即数据线)也会保持这种状态,以保证甲机端数据顺利写入。然后,乙机P1.6脚输出高电平,置数据传送方向为甲机到乙机。最后,乙机在P1.7脚发一个下降沿脉冲,以中断通知甲机可以送数据,同时保持低电平,打开74ALS373,再执行ORL PCON.0,#00000001B 进入ID状态。甲机的INT0中断服务程序把数据从8000H803FH送过来。送完后,通过甲机P1.0再给乙单片机的INT0端发一个下降沿脉冲唤
27、醒乙机,乙机INT0中断服务程序判断数据已经传送完,进行接收数据处理。同理,乙机要送数据到甲机时,先把数据写到0000H003FH,最后是向003FH写FFH,以完成正确置位地址线和数据线。还要把P1.6脚置为低电平,控制数据从乙机传向甲机。再在乙机P1.7发下降沿脉冲触发甲机INT0中断,同时P1.7保持低电平,打开三态门,然后进入ID状态。甲机INT0中断服务程序判断乙机要送数据过来,并且已经做好准备,就把数据从8000H803FH取过来(当然,803FH中数据无效)。取完后,甲机再通过P1.0给乙单片机的INT0端发一个"1"下降沿脉冲唤醒乙机,让乙机继续运行程序。
28、乙机的INT0中断服务程序要处理几个不同事务,有几个分支。如果是乙机向甲机传数据,乙机INT0不用做实质工作,退出中断继续运行主程序即可;如果是甲机向乙机传数据,在传数据之前,乙机INT0要为传数据做好准备,并置乙机为ID状态。传数据之后,乙机INT0处理数据。这里要设置数据传送方向和数据传送状态两个标志,用以引导程序正确运行。甲机的INT0根据传数据方向标志传数据或读数据即可。这里不再写具体程序。双CPU切换控制系统控制流程图如图9所示。图9 双CPU切换控制系统控制流程图双CPU的读写外部存储器的程序代码为:/定义头文件和变量#include <reg52.h>#include
29、 <absacc.h>#include <stdio.h>#include <math.h>#include <stdlib.h>#define uchar unsigned char#define uint unsigned intUint numyaw,numroll,numpitch;/定义双EPROM中的存储单元地址#define dsyawh XBYTE0x0600 #define dsyawl XBYTE0x0100#define dspitchh XBYTE0x0200#define dspitchl XBYTE0x0300#define dsrollh XBYTE0x0400#define dsroll XBYTE0x0500Sbit EXF2=T2CON6;uint I;uchar sf1,sf2,sf3,sf4,send;uint yawh,yawl,pitchh,pitchl,rollh,roll;int yaw,pitch,roll,yawold,pitchold,rollold,delta;/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《过敏性紫癜曹伟》课件
- 《代商务礼仪》课件
- 《确定市场调研目标》课件
- 房屋租赁合同(2篇)
- 《硬盘使用前的处理》课件
- 2024年汽轮机油产品研发与技术转移合作协议3篇
- 2025年郑州货运从业资格证题库
- 2025年昌都货运从业资格证考试模拟考试题库下载
- 2024年混凝土构件生产及安装合同
- 2025年济南道路运输从业人员从业资格考试
- 监理公司各部门职责
- 253种中药材粉末显微鉴别主要特征
- 论辛弃疾词作的愁情主题及其审美价值
- 新形势下我国保险市场营销的现状、问题及对策
- LTE无线网络优化PPT课件
- 动态血压监测在社区高血压患者管理的意义
- 管道中英文对照表
- 240灯控台_说明书
- 新形势下加强市场监管局档案管理工作的策略
- 例行检查和确认检验程序
- 上海旅游资源基本类型及其旅游区布局特点(共5页)
评论
0/150
提交评论