计算机控制课程设计基于PID算法的电加热炉温度控制系统设计.docx
- 文档编号:3560572
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:20
- 大小:274.14KB
计算机控制课程设计基于PID算法的电加热炉温度控制系统设计.docx
《计算机控制课程设计基于PID算法的电加热炉温度控制系统设计.docx》由会员分享,可在线阅读,更多相关《计算机控制课程设计基于PID算法的电加热炉温度控制系统设计.docx(20页珍藏版)》请在冰豆网上搜索。
计算机控制课程设计基于PID算法的电加热炉温度控制系统设计
成绩
《计算机控制技术》
课程设计
题目:
基于数字PID的电加热炉温度控制系统设计
班级:
自动化09-1
姓名:
学号:
2013年1月1日
基于数字PID的电加热炉温度控制系统设计
摘要:
电加热炉控制系统属于一阶纯滞后环节,具有大惯性、纯滞后、非线性等特点,导致传统控制方式超调大、调节时间长、控制精度低。
本设计采用PID算法进行温度控制,使整个闭环系统所期望的传递函数相当于一个延迟环节和一个惯性环节相串联来实现温度的较为精确的控制。
电加热炉加热温度的改变是由上、下两组炉丝的供电功率来调节的,它们分别由两套晶闸管调功器供电。
调功器的输出功率由改变过零触发器的给定电压来调节,本设计以AT89C51单片机为控制核心,输入通道使用AD590传感器检测温度,测量变送传给ADC0809进行A/D转换,输出通道驱动执行结构过零触发器,从而加热电炉丝。
本系统PID算法,将温度控制在50~350℃范围内,并能够实时显示当前温度值。
关键词:
电加热炉;PID;功率;温度控制;
1.1系统组成中体结构
电加热炉温度控制系统原理图如下,主要由温度检测电路、A/D转换电路、驱动执行电路、显示电路及按键电路等组成。
系统采用可控硅交流调压器,输出不同的电压控制电阻炉温度的大小,温度通过热电偶检测,再经过变送器变成0-5V的电压信号送入A/D转换器使之变成数字量,此数字量通过接口送到微机,这是模拟量输入通道。
2.1数字PID控制算法
在电子数字计算机直接数字控制系统中,PID控制器是通过计算机PID控制算法程序实现的。
计算机直接数字控制系统大多数是采样-数据控制系统。
进入计算机的连续-时间信号,必须经过采样和整量化后,变成数字量,方能进入计算机的存贮器和寄存器,而在数字计算机中的计算和处理,不论是积分还是微分,只能用数值计算去逼近。
在数字计算机中,PID控制规律的实现,也必须用数值逼近的方法。
当采样周期相当短时,用求和代替积分,用差商代替微商,使PID算法离散化,将描述连续时间PID算法的微分方程,变为描述离散-时间PID算法的差分方程。
用矩形积分时,有
(1)
用差分代替微分
(2)
由上式得
(3)
式中u0——控制量的基值,即k=0时的控制;u(k)——第k个采样时刻的控制;KP——比例放大系数;KI——积分放大系数;
KD——微分放大系数;
TS——采样周期。
式(3)是数字PID算法的非递推形式,称全量算法。
算法中,为了求和,必须将系统偏差的全部过去值e(j)(j=1,2,3,...,k)都存储起来。
这种算法得出控制量的全量输出u(k),是控制量的绝对数值。
在控制系统中,这种控制量确定了执行机构的位置,例如在阀门控制中,这种算法的输出对应了阀门的位置(开度)。
所以,将这种算法称为“位置算法”。
当执行机构需要的不是控制量的绝对值,而是控制量的增量(例如去驱动步进电动机)时,需要用PID的“增量算法”。
由位置算法求出
再求出
两式相减,得出控制量的增量算法
(4)
式(4)称为增量式PID算法。
对增量式PID算法(4)归并后,得
(5)
其中(5)已看不出是PID的表达式了,也看不出P、I、D作用的直接关系,只表示了各次误差量对控制作用的影响。
从式(5)看出,数字增量式PID算法,只要贮存最近的三个误差采样值e(k),e(k-1),e(k-2)就足够了。
3.1温度检测及功率放大电路
本系统采用镍铬-镍硅热电偶检测电阻炉中的温度,热电偶测温是基于物体的热电效应,它由两种不同的金属或合金组成,其优点是结构简单,可将温度信号转换成电压信号,测温范围广、精度高,可实现远距离测量和传送,使用稳定、可靠,因此被广泛应用。
其不足之处是测温精度受冷端温度(即环境温度)的影响,为了提高热电偶测温精度,需要在热电偶冷端进行温度补偿。
温度检测电路及功率放大电路如图所示。
热电偶冷端温度补偿采用的是集成温度传感器AD590,流过AD590的电流Iu=273μA+T0×1μA/℃,式中,T0为室温。
负载电阻R3上输出电压UOUT=IuR3,选择电阻R3使UOUT在AD590允许输入电压范围内。
本系统选择R3=10kΩ。
这种测量方法冷端温度准确,克服了常规方法补偿误差大和不方便的缺点。
热电偶传感器输出的电压信号较为微弱(只有几毫伏到几十毫伏),因此在进行A/D转换之前必须进行信号变送,由高放大倍数的电路将它放大到A/D转换器通常所要求的电压范围,热电偶的输出热电势为0~56mV。
本系统前级选用自稳态高精度斩波运放ICL7650,输入信号为差动信号,放大倍数为15倍。
后级运放选用较廉价的μA741,放大倍数可调,最大可达100倍,主要完成反相功能。
ICL7650输入端的钳位二极管起保护作用,避免输入线路发生故障时的瞬态尖峰干扰损坏运放,输入电压可直接送入AD574A进行转换。
3.2AD574A模/数转换电路
如下图所示,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.3执行机构
传统的SSR控制采用移相触发电路,通过改变晶闸管导通角的大小来调节输出功率,从而达到自动控温的目的。
这种移相方式输出一种非正弦波,实践表明这种控制方式产生相当大的中频干扰,并通过电网传输给电力系统造成“公害”。
本系统采用单片机控制的固态继电器控温电路,其波形为完整的正弦波,对电阻炉这样的惯性较大的被控对象,是一种稳定、可靠、较合理的控制方法。
调功原理为:
设电网连续N个完整的周波为一个控制周期TC,则
若在设定的控制周期TC内控制主回路导通n(n≤N)个完整的周波,则负载功率为
式中,U为电网电压有效值;为负载的有效电阻。
因此,控制在设定周期TC内主回路导通的周波数n的个数,就可调节负载的功率P。
采用交流过零型固态继电器控温时需交流过零检测电路,此电路输出对应于50Hz交流电压过零时刻的脉冲,在交流电压过零时刻导通。
如图所示是一种由两个光电耦合器和一个单稳态电路组成的交流过零检测电路。
“与非”运算后得到控制信号。
用它来控制固态继电器,从而调节电阻炉温度。
交流过零检测电路
3.4报警电路设计
正常运行时绿灯亮,在保温阶段炉内温度超出系统允差范围,就要进行报警。
报警时报警红灯亮,电笛响,同时发送中断信号至CPU进行处理。
如图
加热炉报警系统图
3.5设计输入输出通道
输入通道:
因为所控的实际温度在50~350℃℃/字,再加放大器偏置措施实现。
(通过调整放大器的零点来实现偏置)这里采用一般中速芯片ADC0809。
ADC0809是带有8位A/D转换器,8路多路开关以及微型计算机兼容的控制逻辑的CMOS组件,其转换方法为逐次逼近型。
8路的模拟开关由地址锁存器和译码器控制,可以在8个通道中任意访问一个通道的模拟信号。
这种器件无需进行零位和满量程调整。
由于多路开关的地址输入部分能够进行锁存和译码,而且其三态TTL输出也可以锁存,所以它易于与微型计算机接口。
其具有较高的转换速度和精度,受温度影响较小,能较长时间保证精度,重现性好,功耗较低,故用于过程控制是比较理想的器件。
ADC0809应用接线图
输出通道:
据其实际情况,D/A转换器的位数可低于A/D转换器的位数,因为一般控制系统对输出通道分辨率的要求比输入通道的低,所以这里采用常用的DAC0832芯片。
DAC0832是8位D/A转换器,与微处理器完全兼容。
期间采用先进的CMOS工艺,因此功耗低,输出漏电流误差较小。
它的内部具有两级输入数据缓冲器和一个R-2RT型电阻网络,因DAC0832电流输出型D/A转换芯片,为了取得电压输出,需在电流输出端接运算放大器,Rf为为运算放大器的反馈电阻端。
双极性电压输出的D/A转换电路通常采用偏移二进制码、补码二进制码和符号一数值编码。
只要在单极性电压输出的基础上再加一级电压放大器,并配以相关电阻网络就可以构成双极性电压输出。
在上图中,运算放大器A2的作用是把运算放大器A1的单向输出电压转变为双向输出。
4.1系统程序流程图
4.1.1系统主程序框图
4.1.2A/D转换子程序流程图
4.1.3LED显示流程图
4.1.4报警程序流程图
4.2程序清单
4.2.1主程序
ORG0000H
AJMPMAIN
ORG0003H
AJMPKEYS
ORG000BH
AJMPPIT0
ORG001BH
AJMPPIT1;中断入口及优先级
MAIN:
MOVSP,#00H
CLR5FH:
清上下限越限标志
MOVA,#00H
MOVR7,#09H
MOVR0,#28H
LP1:
MOV@R0,A
INCR0
DJNZR7,LP1
MOVR7,#06H
MOVR0,#39H
LP2:
MOV@R0,A
INCR0
DJNZR7,LP2
MOVR7,#06H
MOVRO,#50H
LP3:
MOV@R0,A
INCR0
DINZR7,LP3;清显示缓冲区
MOV33H,#00H
MOV34H,#00H;赋KP高低字节
MOV35H,#00H
MOV36H,#00H;赋KI高低字节
MOV37H,#00H
MOV38H,#00H;赋KD高低字节
MOV42H,#00H
MOV43H,#00H;赋K高低字节
MOVTMOD,#56H;T0方式2,T1方式1计数
MOVTLO,#06H
MOVTHO,#06H
MOV25H,#163H;设定值默认值350
SETBTR0;键盘高优先级
SETBET0
SETBEX0
SETBEA;开键盘T0。
T1中断
LOOP:
MOVR0,#56H
MOVR1,#55H
LCALLSCACOV;标度转化
MOVR0,#53H
LCALLDIR
NOP
LCALLDLY10MS
NOP
LCALLDLY10MS
AJMPLOOP;等中断
4.2.2键盘子程序
KEYS:
CLREX0
CLREA
PUSHPSW
PUSHACC;关中断
LCALLDLY10MS;消抖
CC:
JBP3.2AA
SETB5DH;置“显示设定值温度值标志”
MOVA,25H;取运算位的值
MOVB,#10H;BCD码转化
DIVAB
MOV52H,A
MOVA,B
MOV51H,A
MOVR0,#50H
LCALLDIR;显示设定温度
NOP
LCALLDLY10MS
NOP
LCALLDLY10MS
JBP1.7,BB
MOVR1,#25H
LCALLDAAD1
NOP
LCALLDLY10MS
AJMPCC
BB:
JBP1.6CC
MOVR1,#25H
LCALLDEEC1
NOP
LCALLDLY10MS
AJMPCC
AA:
POPACC
POPPSW
SETBEX0
SETBEA;出栈
RETI
4.2.3显示子程序
DIR:
MOVSCON,#00H;置串行口移位寄存器状态
SETBP1.4;开显示
JB5DH,DL1;显示设定温度
DL2:
MOVDPTR,#SEGT
DL0:
MOVA,@R0
MOVCA,@A+DPTR
MOVSBUF,A
LOOP1:
JNBTI,LOOP1
CLRTI
INCR0
MOVA,@R0
MOVCA,@A+DPTR
ANLA,#7FH;使数带小数点
MOVSBUF,A
LOOP2:
JNBTI,LOOP2
CLRTI
INCR0
MOVA,@R0
MOVCA,@A+DPTR
MOVSBUF,A
LOOP3:
JNBTI,LOOP3
CLRTI
CLR
CLR5DH
RET
DL1:
MOV50H,#0AH;小数位黑屏
AJMPDL2
SEGT:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
4.2.4加一子程序
DAAD1:
MOVA,#00H
ORLA,@R1
ADDA,#01H
CJNEA,#30H,DAAD2;超过48度了吗?
DAAD3:
MOV@R1,A
DAA:
RET
DAAD2:
JCDAAD3
MOV@R1,#15EH;超过48则转回到355
AJMPDAA
4.2.5减一子程序
DEEC1:
MOVA,@R1
DECA
CJNEA,#15EH,DEEC2;低于355度了吗?
DEEC3:
MOV@R1,A
DEE:
RET
DEEC2:
JNCDEEC3
MOV@R1,#30H;低于355则转回到48
AJMPDEE
4.2.6T0中断子程序
PTT0:
CLREA
PUSHACC
PUSHPSW
PUAHDPL
PUSHDPH
SETBEA;压栈后开中断响应键盘
PPP:
LCALLSMAP;采样数据
LCALLFILTER;数字滤波
MOVA,2AH;取采样值
CJNEA,#07H,AAA;下限48比较
AJMPBBB
AAA:
JCCCC;小于48度转
CJNEA,#0FEH,DDD;上限355比较
AJMPBBB;转至48~355正常范围处理
DDD:
JCBB
CLRP1.2;大于355黄灯亮
SETB5EH
CLRP1.1;置标志启动风扇
AJMPPPP
CCC:
CLRP1.3;小于48红灯亮
SETB5FH
BBB:
CLRP1.0;置标志启动电炉
AJMPPPP
SETB
SETB
SETB
SETB
CLR5EH
CLR5FH;50~350之间正常
LCALLPID
JNB20H,EEF;设定温度小于实际值转到风扇
MOVA,29H
LCALLFFF
CLR
LOOP10:
MOVR0,#56H;存放相乘结果的首址
MOVR1,#55H;赋显示缓冲区最高位地址
LCALLSCACOV;标度转化
MOVR0,#53H;;赋显示首址
CLRDIR
JBD5H,LOOP10;等待T1中断
CLREA
POPDPH
POPDPL
POPPSW
SETBEA
POPACC
RETI
EEE:
MOVA,28H;风扇处理
LCALLFFF
CLR
AJMPLOOP10
FFF:
CRLA;根据PID结果计算T1初值
INCA
MOVTL1,A
MOVTH1,#0FFH
SETBPI1
SETBTR1
SETBET1
RET
4.2.7采样子程序
SWAP:
MOVR0,#20H
MOVR1,#03H
SAW1:
MOVDPTR,#7FF8H
MOVX@DPTRA;A/D转化
MOVR2,#20H
DLY:
DJNZR2,DLY;延时
HERE:
JBP3.3,HERE
MOVDPTR,#7FF8H
MOVXA,@DPTR;读转化结果
MOV@R0,A
INCR0
DJNZR1,SAM1
RET
4.2.8数字滤波
FILTER:
MOVA,20H
CJNEA,2DHCMP1
AJMPCMP2
CMP1:
JNCCMP2
XCHA,2DH
XCHA,2CH
CMP2:
MOVA,2DH
CJNEA,22EH,CMP3
MOV2AH,A
AJMPRR
CMP3:
JCCMP4
MOV2AH,A
AJMPRR
CMP4:
MOVA,2EH
CJNEA,2CH,CMP5
MOV2AH,A
AJMPRR
CMP5:
JCCMP6
XCHA,2CH
CMP6:
MOV2AH,A
RR:
RET
4.2.9T1中断
PIT1:
CLR00H
JB20H,GGG
SETBP1.0;关闭电炉
GG:
CLRPT1
RETI
GGG:
SETBP1.1;关闭风扇
CLR20H
AJMPGG
5.课程设计总结
本系统选用AT89C51作为控制器,温度检测部分选用AD590作为传感器,ADC0809作为A/D转换器,过零触发器采用光耦驱动电路及双向可控硅电路。
通过理论推导和仿真验证,进一步说明数字PID进行控制时的系统动态性能指标优越。
特别适用于对象为滞后的系统,因此PID算法是一种较好的控制算法,能在工业控制中得到较好地应用。
ThedesignofelectricheatingfurnacetemperaturecontrolsystembasingonthedigitalPID
Abstract:
Theelectricheatingfurnacebelongstothefirst-orderinertial.Itsinertial,hystereticandnonlinearityfeaturebringaboutdifficultytotraditionalcontrolmethod.ThiscurriculumdesignapplythedigitalPIDtheorytocontrolthetemperatureofelectricheatingfurnace,soastomakethewholeclosed-loopsystem'stransferfunctiontobeadelayandFirst-orderinertialinkinseries.Asaresultthetemperaturecontrolsystemwouldworkaccurately.
Therearetwostripheaters,poweredbytwoPWM,usingtochangethetemperatureoftheelectricheatingfurnace.Theoutputofthepower-regulatorismonitoredbythegivenvoltageofcross-zerotrigger.ThiscurriculumdesignisbasedontheAT89C51chip.TheAD590sensorisusedtodetectthetemperatureintheinputchannelanditsvaluesaresendtotheADC0809,thechipwhichwouldchangetheanalogsingletodigitalone.Theoutputchannelwoulddrivethecross-zerotriggerwhichisalsotheactuator.Ifthetwostepsabovearebothactivated,thestripheatersstarttowork.ThesystemusethePIDalgorithm,aimingtocontrolthetemperaturewithin50~350℃,andreal-timedisplayingthetemperaturevaluesisable.
Keywords:
electricheatingfurnace;PID;power;temperaturecontrol
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 课程设计 基于 PID 算法 加热炉 温度 控制系统 设计