完整版电阻加热炉温度控制系统毕业设计.docx
- 文档编号:10249026
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:19
- 大小:22.30KB
完整版电阻加热炉温度控制系统毕业设计.docx
《完整版电阻加热炉温度控制系统毕业设计.docx》由会员分享,可在线阅读,更多相关《完整版电阻加热炉温度控制系统毕业设计.docx(19页珍藏版)》请在冰豆网上搜索。
完整版电阻加热炉温度控制系统毕业设计
长春工业大学
毕业设计、毕业论文
题目电阻加热炉温度控制系统
学院人文信息学院
专业班级电气工程及其自动化070922班
指导教师王霆
姓名刘塞北
2011年6月3日
摘要
如今电阻炉被广泛应用于各大工业领域,通过单片机的实时控温来提高劳动生产效率和产品质量,同时对节能环保也有着重大意义。
本此设计的核心处理器为AT89C2051单片机,用其对电阻炉温度进行检测和控制。
选择了K型热电偶作为金属传感器,其优点是精度高成本低,并选择串行E²PROM24C01来存储测量数据和调控参数,这样就确保断电后数据仍能被保存。
检测信号经运算放大器放大后进入多路开关,多路开关轮流检测3个通道的温度信号后轮流输出给AD转换器,最后将电压信号转变为频率信号传输给单片机进行处理。
控制方式则为调功控制,通过使用光耦合双向可控硅对双向导通晶闸管的导通百分比进行控制,进而对电阻丝的功率进行调节。
在键盘上输入预设温度后,单片机通过控制双向导通晶闸管的导通百分比对电阻丝的功率进行调节,使温度控制在预设值,同时在LED显示屏上显示当前炉内温度。
关键词:
AT89C2051频率转换调整
Abstract
Nowresistanceeachindustrialfields.Microcontrollerisusedtocontroltemperaturetoimproveproductionefficiencyandproductquality,anditisimportanttotheenergyconservationandenvironmentalprotection.
ThedesignofthecoreprocessorasAT89C2051microcontroller,withitstotheresistancefurnacetemperaturetestingandcontrol.ChooseKtypethermocoupleasmetalsensor,itsadvantageislowcost,andchoose24C01E²PROMserialtostoragemeasurementdataandcontrolparameters,thusensureafterpowerfailuredatacanstillbesaved.Detectionsignalamplifieramplificationbyenteringmultipleswitchafter,multi-channelswitchturnsdetectionthreechannelstemperaturesignalaftertaketurnsoutputtoADconverter,finallythevoltagesignalintofrequencysignaltransmissiongivemicrocontrollertoundertakepercentage,andthepowerofresistancewireadjusted.Onthekeyboardinputpresettemperature,SCMthroughcontroldoubleguidethethyristorconductionpercentageofpowerofresistancewireontheadjustment,maketemperaturecontrolindefault,whileintheLEDdisplayondisplaythecurrentinside-.Identificationoftransferfunctionforcontrolof
greenhouseairtemperature[J].J.agric.engngRes.1995.
[19]MalvinoA.P.DigitalComputer.McGraw-HillPublishing.1977.
[20]PhilGilard.DistributedControl.C&I[J].1982.
[21]Culpan.MultinationalStrategic[M].TheHoworthPress.1993.
[22]RogerEM.Diffusionofinnovations.TheFreePress.1983
附录1:
电阻式锅炉的自动控温系统原理图
附录2:
电阻式锅炉的自动控温系统程序清单
初始化程序设计
CLEAR:
CLRA
DECA
MOVP1,A
MOVTMOD,#90H;采样周期
MOVSP,#75H
CLRA
MOV20H,A
MOV21H,A
MOV22H,A
MOV23H,A
MOV24H,A
MOV25H,A
MOV26H,A
MOV27H,A
MOV28H,A
MOV29H,A
MOVSCON,#10H
MOVTMOD,#01H
VSDAEQUP1.6
VSCLEQUP1.6
SLAEQU50H
NUMBYTEQU51H
MTDEQU30H
MRDEQU40H
SLAWEQU0A0H
SLAREQU0A1H
SETBEX0
SETBEA
RET
主程序入口和中断程序入口
INTRY:
ORG0000H
AJMPSTART
ORG0003H
RETI
ORG000BH
RETI
ORG0013H
RETI
ORG001BH
RETI
主程序
START:
LCALLCLEARMEMIO
MAIN:
MOVTMOD,#01H
MOVTH0,#07H
MOVTL0,#0FFH
SETBTR0
MOVR1,071H
MOVRO,4ACH
LCALLFMUL
MOVR1,A
LCALLFMUL
MOVR1,O1H
LCALLFADD
MOV20H,R0
MOVRO,00H
MOVR0,071H
LCALLFSQU
MOVR1,B
LCALLFMUL
MOV21H,R0
MOVRO,00H
MOVRO,071H
LCALLFSQU
MOVRI,071H
LCALLFMUL
MOVR1,C
LCALLFMUL
MOVR1,020H
LCALLFADD
MOVR1,21H
LCALLFADD
MOVR1,035H
LCALLFMUL
MOV22H,R0
MOVR0,071H
LCALLDISPLAY
LCALLKEY
MOVR0,023H
MOVR1,022H
LCALLCOLLECT
LCALLFCMP
MOVTMOD,#01H
LJMPINTT0
MOVTL0,#18H
MOVTH0,#0FCH
SETBEA
SETBET0
SETBTR0
INTT0:
CPLP1.2
MOVTL0,#18H
MOVTH0,#0FCH
RETI
END
终端服务程序
ORG0200H
T0INT:
MOVTL0,#3CH;重置T0时间常数
MOVTL0,#0B0H
DJNZR7,TOR;判1s到否?
未到返回
MOVR7,#10;重置1s计数器初值
LCALLTREF;调用温度设定值检测子程序
LCALLTADC;调用温度检测子程序
LCALLXSCL;调用标度变换子程序
LCALLDISP;调用刷新显示子程序
LCALLCONT;调用温度控制子程序
TOR:
RETI;中段返回
AD转换子程序
CONVERT:
NOP;
MOVTMOD,#09H
MOVTL0,#00H
MOVTH0,#00H
LOOP1:
NOP
JBP3.2,LOOP1
SERBTR0
LOOP2:
NOP
JNBP3.2,LOOP2
LOOP3:
NOP
JBP3.2,LOOP3
CLRTRP
MOVB,TH0
MOVA,TL0
MOVTL0,#00H
MOVTH0,#00H
AJMPLOOP1
键盘程序
ORG0000H;复位地址
LJMPSTAT;转初始化
ORG00003H;INT0中断入口地址
LJMPPINT0;转INT0中断服务程序
ORG0100H;初始化程序首地址
TREF:
MOVSP,#60H;置堆栈指针
SETBIN0;置INT0为边沿触发方式
置P0.4-P0.7输出0
SETBEA;CPU开中
SETBEX0;INT0开中
LJMPMAIN;转主程序并等待有键按下时INT0中断
ORG2000H;INT0中断服务程序首地址
PINT0:
PUSHAcc;保护现场
PUSHPSW
MOVA,P0;读行线(P0.0-P0.3)数据
CPLA;数据取反,“1”有效
ANLA,#0FH;屏蔽列线,保留行线数据
MOVR2,A;存行线(P0.0-P0.3)数据(R2低4位)
MOVP0,#0F0H;行线置低电平,列线置输入态
MOVA,P0;读列线(P0.4-P0.7)数据
CPLA;数据取反,“1”有效
ANLA,#0F0H;屏蔽行线,保留列线数据(A中高4位)
MOVR1,#03H;取列线编号初值
MOVR3,#03H;置循环数
CLRC
PINT01:
RLCA;依次左移入C中
JCPINT02;C=1,该列有键按下,(列线编号存R1)
DECR1;C=0,无键按下,修正列编号
DJNZR3,PINT01;判断循环是否结束未结束继续寻找
PINT02:
MOVA,R2;取行线数据(低4位)
MOVR2,#00H;置行线编号初值
MOVR3,#03H;置循环数
PINT03:
RRCA;依次右移入C中
JCPINT04;C=1,该行有键按下,(行线编号存R2)
INCR2;C=0,无键按下,修正行线编号
DJNZR3,PINT03;判断循环是否结束未结束继续寻找
PINT04:
MOVA,R2;取行线编号
CLRC
RLCA;行编号×2
RCLA;行编号×4+列编号=按键编号
MOV30H,A;存按键编号
POPPSW
POPAcc
RET1
数字滤波程序
FILTER:
MOVA,2CH
CJNZA,2DH,CMPI
AJMPA,CMP2
CMP1:
JNCCMP1
XCHA,2DH
XCHA,2CH
CMP2:
MOVA,2DH
CJNEA,2EH,CMP3
MOV2AH,A
RET
CMP3:
JCCMP4
MOVAH,A
RET
CMP4:
MOVA,2EH
CJMEA,2CH,CMP5
MOV2AH,A
RET
CMP5:
JCCMP6
XCHA,2CH
CMP6:
MOV2AH,A
RET
计算t=f(R)的程序如下:
FPLN:
POPDPH
POPDPL;从堆栈中得到au的指针
CLRA
MOVCA,A+DPTR;取出anp
MOVR6,A
INCDPTR
CLRA
MOVCAA+DPTR;取出anl
MOVR2,A
INCDPTR
CLRA
MOVCAA+DPTR;取出anl
MOVR3,A
INCDPTR
FP1:
MOVAR0
XRLA,R6
MOVC,ACC.7
MOV38H,C;暂存乘积符号
INCR0
MOVAR0;取出X的尾数
MOVR5,A
DECR0
DECR0
LCALLDMUL;调用定点双字节小数乘法子程序
MOVA,R2
JBACC.7,FP2
MOVA,R7;左规格化一位
RLCA
MOVA,R3
RLCA
MOVR3,A
MOVA,RZ
RLCA
MOVR2,A
DECR6
FPZ:
MOVA,R6;计算乘积的阶码
ADDAR0
MOVC,38H
MOVACC.7,C
MOVR6,A
CLRA
MOVCAA+DPTR;取出aip
MOVR7,A
INCDPTR
CLRA
MOVCAA+DPTR;取出aik
MOVR4,A
INCDPTR
CLRA
MOVCAA+DPTR;取出ail
MOVR5,A
INCDPTR
CLR3AH
LCALLFABP;调用浮点加法子程序
MOVA,R4
MOVR6,A
CLRA
MOVCAA+DPTR;取出下一个字节
CJNEA,#40H,FP1
LCALLFSTR;结束并回送计算结果
CLRA
JMPA+DPTR;转回后续指令
PID程序设计
PID:
MOVR5,31H;取W
MOVR4,32H
MOVR3,#00H;取Yi
MOVR2,2AH
ACALLCPL1;取Yi的补码
ACALLDSUM;计算ei=W-Yi
MOV39H,R7;存ei
MOV3AH,R6
MOVR5,35H;取I
MOVR4,36H
MOVR0,#4AH;R0放入乘积高位字节地址指针
ACALLMULT1;计算
MOVR5,39H;取
MOVR4,3AH
MOVR3,3BH;取
MOVR2,3CH
ACALLCPL1;求的补码
ACALLDSUB;求
MOVA,R7
MOVR5,A;存
MOVA,R6
MOVR4,A
MOVR3,4BH;取
MOVR2,4AH
ACALLDSUM;求
MOV4BH,R7
MOV4AH,R6
MOVR5,39H
MOVR4,3AH;取
MOVR3,3DH
MOVR2,3EH;取
ACALLDSUM;计算
MOVA,R7
MOVR5,A
MOVA,R6
MOVR4,A
MOVR3,3BH
MOVR2,3CH;取
ACALLCPL1;求的补码
ACALLDSUM;计算
MOVA,R7
MOVR5,A;存和
MOVA,R6
MOVR4,A
MOVR3,3BH
MOVR3,3CH;取
ACALLCPL1;求的补码
ACALLDSUM;计算
MOVR5,37H;取D
MOVR4,38H
MOVR0,#46H
ACALLMULT1;求出
MOVR5,47H
MOVR4,46H;存
MOVR3,4BH
MOVR2,4AH;取
ACALLDSUM;计算
MOVR5,33H;取
MOVR4,34H
MOVR0,#46H
ACALLMULTl;计算
MOVR3,47H
MOVR2,46H
MOVR5,2FH;取
MOVR4,30H
ACALLDSUM;求出
MOV2FH,R7
MOV30H,R6
MOV3DH,3BH;存
MOV3EH,3CH
MOV3BH,39H;存
MOV3CH,3AH
RET
DSUM:
MOVA,R4
ADDA,R2
MOVR6,A
MOVA,R5
ADDCA,R3
MOVR7,A
RET
CPLI:
MOVA,R2
CPLA
ADDA,#0lH
MOVR2,A
MOVA,R3
CPLA
ADDCA,#00H
MOVR3,A
RET
MULTI:
MOVA,R7
RLCA
MOVSIGN1,C;存被乘数符号位
JNCPOS1;被乘数为正转
MOVA,R6;求补
CPLA
ADDA,#0lH
MOVR6,A
MOVA,R7
CPLA
ADDCA,#00H
MOVR7,A
POSI:
OVA,R5
RLCA
MOVSIGN2,C;存乘数符号位
JNCPOS2;乘数为正转
MOVA,R4
CPLA
ADDA,#0lH
MOVR4,A
MOVA,R5
CPLA
ADDCA,#00H
MOVR5,A
POSZ:
ACALLMUL1,
MOVC,SIGN1
ANLC,SIGN2
JCTPL;C=1是两个负数相乘转
MOVC,SIGN1
ORLC,SIGN2
JNCTPL;C=0是两个正数相乘转
DECR0
DECR0
DECR0
MOVAR0
CPLA
ADDA,#0lH
MOVR0,A
INCR0
MOVARO
CPLA
ADDCA,#00H
TPL:
RET
MULT:
MOVA,R6;取b
MOVB,R4;取d
MULAB;求bd
MOVRo,A;求bdL
MOVR3,B;求bdL
MOVA,R4;取d
MOVB,R7;取a
MULAB;求ad
ADDA,R3;求adL+bdH
MOVR3,A;暂存adL+bdH
MOVA,B
ADDCA,#00H;adH
MOVR2,A;暂存
MOVA,R6;取b
MOVB,R5;取c
MULAB;求bc
ADDA,R3;求adL+bcL+bdH
INCR0;修改指针
MOVR0,A;乘积第三字节存入
CLR55BH;清标志
MOVA,R2
ADDCA,B;求adH+bcH
MOVR2,A
JNCLAST;无进位数
SETB5BH;置进位标志
MOVA,R7;取a
MOVB,R5;取c
MULAB;求ac
ADDA,R2;求acL+adH+bcH
INCR0
MOVR0,A;存积的第二个字节
MOVA,B
ADDCA,#00H
MOVC,5BH
ADDCA,#00H
INCR0;修改指针
MOVR0,A;存积的最高字节
RET
1.指导教师简要评语(质量、水平,能否参加答辩)
指导教师签字
年月日
2.评阅教师简要评语(质量、水平,能否参加答辩)
评阅教师签字
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 电阻 加热炉 温度 控制系统 毕业设计
![提示](https://static.bdocx.com/images/bang_tan.gif)