资源描述
计算机控制技术课程设计电阻炉温度控制系统设计
26
2020年4月19日
文档仅供参考,不当之处,请联系改正。
合肥工业大学
《计算机控制技术》课程设计
——电阻炉温度控制系统设计
学院专业
姓 名
学 号_______ ________ _
完成时间
摘 要:电阻炉的类型根据其热量产生的方式不同,可分为间接加热式和直接加热式两大类。间接加热式电阻炉,就是在炉子内部有专用的电阻材料制作的加热元件,电流经过加热元件时产生热量,再经过热的传导、对流、辐射而使放置在炉中的炉料被加热。直接加热式电阻炉,是将电源直接接在所需加热的材料上,让强大的电流直接流过所需加热的材料,使材料本身发热从而达到加热的效果。工业电阻炉,大部分采用间接加热式,只有一小部分采用直接加热式。由于电阻炉具有热效率高、热量损失小、加热方式简单、温度场分布 均匀、环保等优点,应用十分广泛。
关键词:炉温控制;高效率;加热
一、总体方案设计
本次课程设计主要就是使用计算机以及相应的部件组成电阻炉炉温的自动控制系统,从而使系统达到工艺要求的性能指标。
1、 设计内容及要求
电阻加热炉用于合金钢产品热力特性实验,电加热炉用电炉丝提供功率,使其在预定的时间内将炉内温度稳定到给定的温度值。在本控制对象电阻加热炉功率为8KW,有220V交流电源供电,采用双向可控硅进行控制。
2、工艺要求及要求实现的基本功能
本系统中所选用的加热炉为间接加热式电阻炉,控制要求为采用一台主机控制8个同样规格的电阻炉温度;电炉额定功率为20 kW;)恒温正常工作温度为1000℃,控温精度为±1%;电阻炉温度按预定的规律变化,超调量应尽可能小,且具有良好的稳定性;具有温度、曲线自动显示和打印功能,显示精度为±1℃;具有报警、参数设定、温度曲线修改设置等功能。
3、控制系统整体设计
电阻炉温度计算机控制系统主要由主机、温度检测装置、A/D转换器、执行机构及辅助电路组成。系统中主机能够选用工业控制计算机、单片微型计算机或可编程序控制器中的一种作为控制器,再根据系统控制要求,选择一种合理的控制算法对电阻炉温度进行控制。控制系统组成框图如图11-1所示。采用热电偶作为测温元件,经变送器及A/D转换电路对测得的温度信号进行处理,送入主机与给定值比较,按控制算法计算后输出控制量,经过固态继电器实现对电阻炉加热功率的调节,使炉温按设定温度曲线变化。各部分方案如下:
(1)控制系统主机
考虑到MCS-51系列单片机已经过长期的应用,性能比较稳定,其功能完全能够满足本系统控制要求,人们对它又比较熟悉,因此主机采用AT89C51单片机。
(2)检测装置
系统选用镍铬-镍硅热电偶作为测温元件检测炉膛中的温度。镍铬-镍硅热电偶测温范围为-200~+1200℃(分度号为k)。它线性度较好,价格便宜,输出热电动势较大(40μA/℃),便于测量放大器的选配。热电偶冷端温度补偿采用集成温度传感器AD590。变送器采用两级放大,第一级选用高稳定性运放ICL7650,第二级由通用型集成运算放大器μA741构成。
(3)执行机构
采用交流过零触发型固态继电器控制电路。这种控制方式与传统的采用移相触发电路改变晶闸管导通角的双向晶闸管(SCR)控制方式相比,具有稳定、可靠、先进等优点。
(4)模/数转换器(A/D转换器)
选用AD574A模/数转换器实现对温度信号的转换。AD574A是12位逐次逼近型A/D转换器,转换时间为25μs,转换精度为0.05%。
二、数字控制器的设计
理论分析和实验结果表明,电阻炉是一个具有自平衡能力的对象,能够近似为带有纯滞后的一阶惯性环节。由被控对象实验得到的飞升曲线,确定出被控对象的纯滞后时间τ=1.2 min和被控对象的惯性时间常数TP=1.2 min。当τ/TP≤0.5时,可采用PID算法控制;当τ/TP> 0.5时,可采用达林算法控制,本系统τ/TTP>0.5,故采用达林算法控制。
三、硬件的设计和实现
1、温度检测及功率放大电路
本系统采用镍铬-镍硅热电偶检测电阻炉中的温度,热电偶测温是基于物体的热电效 应,它由两种不同的金属或合金组成,其优点是结构简单,可将温度信号转换成电压信号,测温范围广、精度高,可实现远距离测量和传送,使用稳定、可靠,因此被广泛应用。其不足之处是测温精度受冷端温度(即环境温度)的影响,为了提高热电偶测温精度,需要在热电偶冷端进行温度补偿。温度检测电路及功率放大电路如图所示。热电偶冷端温度补偿采用的是集成温度传感器AD590,流过AD590的电流Iu=273μA+ T0×1μA/℃,式中,T0为室温。负载电阻R3上输出电压UOUT= Iu R3,选择电阻R3使UOUT在AD590允许输入电压范围内。本系统选择R3=10 kΩ。这种测量方法冷端温度准确,克服了常规方法补偿误差大和不方便的缺点。
热电偶传感器输出的电压信号较为微弱(只有几毫伏到几十毫伏),因此在进行A/D转换之前必须进行信号变送,由高放大倍数的电路将它放大到A/D转换器一般所要求的电压范围,热电偶的输出热电势为0~56 mV。本系统前级选用自稳态高精度斩波运放 ICL7650,输入信号为差动信号,放大倍数为15倍。后级运放选用较廉价的μA741,放大倍数可调,最大可达100倍,主要完成反相功能。ICL7650输入端的钳位二极管起保护作用,避免输入线路发生故障时的瞬态尖峰干扰损坏运放,输入电压可直接送入AD574A进行转换。
2、AD574A模/数转换电路
如下图所示,AD574A工作在12位状态,转换值分两次输出,高8位从DB4~DB11输出,低4位从DB0~DB3输出,并直接和单片机的数据线相连,AD574A的片选端接锁存器的Q7端,低电平有效;CE为片选使能端,高电平有效;CS 和CE共同用于片选控制,只有当两个信号同时有效时,才能选中本芯片工作。A0端接锁存器74LS373的Q1端。A0=0时启动A/D转换。R/接锁存器74LS373的Q0端。R/=0时,启动A/D转换;R/=1时,允许读出转换后的数据。AT89C51的和经“与非”门74LS00与AD574A的CE端相接。12/8接地表示AT89C51要分两次从AD574A读出A/D转换的12位数字量。
3、执行机构
传统的SSR控制采用移相触发电路,经过改变晶闸管导通角的大小来调节输出功率,从而达到自动控温的目的。这种移相方式输出一种非正弦波,实践表明这种控制方式产生相当大的中频干扰,并经过电网传输给电力系统造成“公害”。本系统采用单片机控制的固态继电器控温电路,其波形为完整的正弦波,对电阻炉这样的惯性较大的被控对象,是一种稳定、可靠、较合理的控制方法。
调功原理为:设电网连续 N个完整的周波为一个控制周期TC,则
TC=
式中,f为电网频率。
若在设定的控制周期TC内控制主回路导通 n(n≤N)个完整的周波,则负载功率为
P=
式中,U为电网电压有效值; 为负载的有效电阻。
因此,控制在设定周期TC内主回路导通的周波数 n的个数,就可调节负载的功率P。采用交流过零型固态继电器控温时需交流过零检测电路,此电路输出对应于50 Hz交流电压过零时刻的脉冲,在交流电压过零时刻导通。如图11-4所示是一种由两个光电耦合器和一个单稳态电路组成的交流过零检测电路。
其中,GD1、GD2为光电耦合器,具有检零和隔离功能,R10为限流电阻。在交流正半周,GD1导通,GD2截止,VA为低电平;在交流负半周,GD1截止,GD2导通,VA仍为低电平。只有在交流过零点时,GD1和GD2均截止,VA为高电平。VA再经过74LS123单稳态电路整形,得到一过零脉冲序列VB,VB波形如图11-5所示。VB脉冲序列再与单片机P1.X输出的触发脉冲信号进行“与非”运算后得到控制信号。用它来控制固态继电器,从而调节电阻炉温度。
交流过零检测电路
4、报警电路设计:
正常运行时绿灯亮,在保温阶段炉内温度超出系统允差范围,就要进行报警。报警时报警红灯亮,电笛响,同时发送中断信号至CPU进行处理。如图2-3
图2-3加热炉报警系统图
5、设计输入输出通道
输入通道:因为所控的实际温度在50 ~ 350℃,即(350-50)=300因此选用8位A/D转换器,其分辨率约为1.5℃/字,再加放大器偏置措施实现。(经过调整放大器的零点来实现偏置)这里采用一般中速芯片ADC0809。ADC0809是带有8位A/D转换器,8路多路开关以及微型计算机兼容的控制逻辑的CMOS组件,其转换方法为逐次逼近型。8路的模拟开关由地址锁存器和译码器控制,能够在8个通道中任意访问一个通道的模拟信号。这种器件无需进行零位和满量程调整。由于多路开关的地址输入部分能够进行锁存和译码,而且其三态TTL输出也能够锁存,因此它易于与微型计算机接口。其具有较高的转换速度和精度,受温度影响较小,能较长时间保证精度,重现性好,功耗较低,故用于过程控制是比较理想的器件。
图2-4ADC0809应用接线图
输出通道:据其实际情况,D/A转换器的位数可低于A/D转换器的位数,因为一般控制系统对输出通道分辨率的要求比输入通道的低,因此这里采用常见的DAC0832芯片
DAC0832是8位D/A转换器,与微处理器完全兼容。期间采用先进的CMOS工艺,因此功耗低,输出漏电流误差较小。它的内部具有两级输入数据缓冲器和一个R-2RT型电阻网络,因DAC0832电流输出型D/A转换芯片,为了取得电压输出,需在电流输出端接运算放大器,Rf为为运算放大器的反馈电阻端。
双极性电压输出的D/A转换电路一般采用偏移二进制码、补码二进制码和符号一数值编码。只要在单极性电压输出的基础上再加一级电压放大器,并配以相关电阻网络就能够构成双极性电压输出。在上图中,运算放大器A2的作用是把运算放大器A1的单向输出电压转变为双向输出。
三、数字控制器的设计
1、控制算法:
电阻加热炉温度控制系统框图:.
大林算法的设计目标是设计一个合适的数字控制器,使整个闭环系统的传递函数相当于一个带有纯滞后的一阶惯性环节,即:
一般认为对象与一个零阶保持器相串联。
四、软件设计
1、系统程序流程图
系统主程序框图 A/D转换子程序流程图
c、LED显示流程图
d、报警程序流程图
e、数字控制算法子程序流程图
2、程序清单
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP KEYS
ORG 000BH
AJMP PIT0
ORG 001BH
AJMP PIT1 ;中断入口及优先级
MAIN: MOV SP,#00H
CLR 5FH :清上下限越限标志
MOV A,#00H
MOV R7,#09H
MOV R0,#28H
LP1: MOV @R0,A
INC R0
DJNZ R7,LP1
MOV R7,#06H
MOV R0,#39H
LP2: MOV @R0,A
INC R0
DJNZ R7,LP2
MOV R7,#06H
MOV RO,#50H
LP3: MOV @R0,A
INC R0
DINZ R7,LP3 ;清显示缓冲区
MOV 33H,#00H
MOV 34H,#00H ;赋KP高低字节
MOV 35H,#00H
MOV 36H,#00H ; 赋KI高低字节
MOV 37H,#00H
MOV 38H,#00H ; 赋KD高低字节
MOV 42H,#00H
MOV 43H,#00H ;赋K高低字节
MOV TMOD,#56H ;T0方式2,T1方式1计数
MOV TLO,#06H
MOV THO,#06H
MOV 25H,#163H ;设定值默认值350
SETB TR0 ;键盘高优先级
SETB ET0
SETB EX0
SETB EA ;开键盘T0。T1中断
LOOP: MOV R0,#56H
MOV R1,#55H
LCALL SCACOV ;标度转化
MOV R0,#53H
LCALL DIR
NOP
LCALL DLY10MS
NOP
LCALL DLY10MS
AJMP LOOP ;等中断
键盘子程序
KEYS: CLR EX0
CLR EA
PUSH PSW
PUSH ACC ;关中断
LCALL DLY10MS ;消抖
CC: JB P3.2 AA
SETB 5DH ;置“显示设定值温度值标志”
MOV A,25H ;取运算位的值
MOV B,#10H ;BCD码转化
DIV A B
MOV 52H,A
MOV A, B
MOV 51H, A
MOV R0,#50H
LCALL DIR ;显示设定温度
NOP
LCALL DLY10MS
NOP
LCALL DLY10MS
JB P1.7 ,BB
MOV R1,#25H
LCALL DAAD1
NOP
LCALL DLY10MS
AJMP CC
BB: JB P1.6 CC
MOV R1,#25H
LCALL DEEC1
NOP
LCALL DLY10MS
AJMP CC
AA: POP ACC
POP PSW
SETB EX0
SETB EA ;出栈
RETI
显示子程序
DIR: MOV SCON ,#00H ;置串行口移位寄存器状态
SETB P1.4 ;开显示
JB 5DH,DL1 ;显示设定温度
DL2: MOV DPTR,#SEGT
DL0: MOV A,@R0
MOVC A,@A+DPTR
MOV SBUF ,A
LOOP1: JNB TI, LOOP1
CLR TI
INC R0
MOV A,@R0
MOVC A,@A+DPTR
ANL A, #7FH ;使数带小数点
MOV SBUF ,A
LOOP2: JNB TI,LOOP2
CLR TI
INC R0
MOV A,@R0
MOVC A,@A+DPTR
MOV SBUF,A
LOOP3: JNB TI,LOOP3
CLR TI
CLR P1.4
CLR 5DH
RET
DL1: MOV 50H,#0AH ;小数位黑屏
AJMP DL2
SEGT: DB 0C0H ,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
加一子程序
DAAD1: MOV A,#00H
ORL A,@R1
ADD A,#01H
CJNE A,#30H,DAAD2 ;超过48度了吗?
DAAD3: MOV @R1,A
DAA: RET
DAAD2: JC DAAD3
MOV @R1,#15EH ;超过48则转回到355
AJMP DAA
减一子程序
DEEC1: MOV A,@R1
DEC A
CJNE A,#15EH,DEEC2 ;低于355度了吗?
DEEC3: MOV @R1,A
DEE : RET
DEEC2: JNC DEEC3
MOV @R1,#30H ;低于355则转回到48
AJMP DEE
T0中断子程序
PTT0: CLR EA
PUSH ACC
PUSH PSW
PUAH DPL
PUSH DPH
SETB EA ;压栈后开中断响应键盘
PPP: LCALL SMAP ;采样数据
LCALL FILTER ;数字滤波
MOV A,2AH ;取采样值
CJNE A,#07H,AAA ;下限48比较
AJMP BBB
AAA: JC CCC ;小于48度转
CJNE A,#0FEH ,DDD ;上限355比较
AJMP BBB ;转至48~355正常范围处理
DDD: JC BB
CLR P1.2 ;大于355黄灯亮
SETB 5EH
CLR P1.1 ;置标志 启动风扇
AJMP PPP
CCC: CLR P1.3 ;小于48红灯亮
SETB 5FH
BBB: CLR P1.0 ;置标志启动电炉
AJMP PPP
SETB P1.0
SETB P1.1
SETB P1.2
SETB P1.3
CLR 5EH
CLR 5FH ;50~350之间正常
LCALL PID
JNB 20H,EEF ;设定温度小于实际值转到风扇
MOV A,29H
LCALL FFF
CLR P1.0
LOOP10: MOV R0,#56H ;存放相乘结果的首址
MOV R1,#55H ;赋显示缓冲区最高位地址
LCALL SCACOV ;标度转化
MOV R0,#53H ;;赋显示首址
CLR DIR
JB D5H,LOOP10 ;等待T1中断
CLR EA
POP DPH
POP DPL
POP PSW
SETB EA
POP ACC
RETI
EEE: MOV A,28H ;风扇处理
LCALL FFF
CLR P1.1
AJMP LOOP10
FFF: CRL A ;根据PID结果计算T1初值
INC A
MOV TL1,A
MOV TH1,#0FFH
SETB PI1
SETB TR1
SETB ET1
RET
采样子程序
SWAP: MOV R0,#20H
MOV R1,#03H
SAW1: MOV DPTR,#7FF8H
MOVX @DPTR A ;A/D转化
MOV R2,#20H
DLY: DJNZ R2,DLY ;延时
HERE: JB P3.3 ,HERE
MOV DPTR,#7FF8H
MOVX A,@DPTR ;读转化结果
MOV @R0,A
INC R0
DJNZ R1,SAM1
RET
数字滤波
FILTER: MOV A, 20H
CJNE A,2DH CMP1
AJMP CMP2
CMP1: JNC CMP2
XCH A,2DH
XCH A,2CH
CMP2: MOV A,2DH
CJNE A,22EH,CMP3
MOV 2AH,A
AJMP RR
CMP3: JC CMP4
MOV 2AH,A
AJMP RR
CMP4: MOV A,2EH
CJNE A,2CH,CMP5
MOV 2AH ,A
AJMP RR
CMP5: JC CMP6
XCH A,2CH
CMP6: MOV 2AH,A
RR: RET
T1中断
PIT1: CLR 00H
JB 20H, GGG
SETB P1.0 ;关闭电炉
GG: CLR PT1
RETI
GGG: SETB P1.1 ;关闭风扇
CLR 20H
AJMP GG
展开阅读全文