电阻炉炉温自动控制系统.docx

上传人:b****6 文档编号:5636306 上传时间:2022-12-29 格式:DOCX 页数:25 大小:100.02KB
下载 相关 举报
电阻炉炉温自动控制系统.docx_第1页
第1页 / 共25页
电阻炉炉温自动控制系统.docx_第2页
第2页 / 共25页
电阻炉炉温自动控制系统.docx_第3页
第3页 / 共25页
电阻炉炉温自动控制系统.docx_第4页
第4页 / 共25页
电阻炉炉温自动控制系统.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

电阻炉炉温自动控制系统.docx

《电阻炉炉温自动控制系统.docx》由会员分享,可在线阅读,更多相关《电阻炉炉温自动控制系统.docx(25页珍藏版)》请在冰豆网上搜索。

电阻炉炉温自动控制系统.docx

电阻炉炉温自动控制系统

课程设计

2014~2015学年第一学期

 

设计题目微机控制系统课程设计

 

院(系)计算机科学与信息工程

专业计算机科学与技术

班级学号

学生姓名尹永贤

设计时间2014年12月1日——2014年12月19日

指导教师

提交日期2014年12月19日

上海应用技术学院课程设计任务书

课程名称

微机控制系统课程设计

课程代码

B704289

设计题目

电阻炉炉温自动控制系统

题目序号

1

设计时间

2014年12月1日——2014年12月19日

系(院)

计算机科学与信息工程

专业

计算机科学与技术

班级

11104112

一、课程设计任务(条件)、具体技术参数(指标)

本课程的实训实际上是学生学习完《微机控制系统原理与应用》课程后,进行的一次全面的综合训练,其目的在于加深对计算机控制技术理论知识的理解和对这些理论的实际应用能力,提高对实际问题的分析和解决能力,以达到理论学习的目的,并培养学生应用计算机辅助设计和撰写设计说明书的能力。

(1)设计内容及要求

电加热炉用电炉丝提供功率,使其在预定的时间内将炉内温度稳定到给定的温度值。

在本控制对象电阻加热炉(或电水壶)功率为1KW,有220V交流电源供电,采用双向可控硅进行控制。

(2)工艺要求

按照规定的曲线进行升温和降温,温度控制范围为0—75℃,升温和降温阶段的温度控制精度为+1℃,保温阶段温度控制精度为+1℃。

(3)要求实现的系统基本功能

微机自动调节:

正常工况下,系统投入自动。

模拟手动操作:

当系统发生异常,投入手动控制。

微机监控功能:

显示当前被控量的设定值、实际值,控制量的输出值,参数报警时有灯光报警。

本课程设计包含两大部分内容:

设计报告和设计软硬件。

其中设计软硬件在题目验收时由指导教师检查,设计报告作为书面材料提交。

设计报告的主要内容有:

A、硬件设计

●模拟量输入通道:

单端对地输入;输入电压信号量程为0~5VDC;输出码制为单极性二进制码。

●模拟量输出通道:

采用电流输出方式。

●选择主电路器件并设计主电路。

●温度传感器的选择与安装。

B、软件设计

●设计数据采集程序;

●数据滤波程序;

●标度变换程序;

●控制计算程序(PID控制);

●控制输出程序(限幅输出);

●要求有参数(给定值、采样周期、PID参数)设定和修改功能;

●实时显示控制回路的给定值、测量参数、控制量。

C、系统调试

●硬件调试:

A/D通道调试;D/A通道调试。

●软件调试:

各功能模块程序分别调试;软件联调。

●硬件、软件联调。

●系统综合实验。

二、对课程设计成果的要求(包括课程设计说明书、图纸、图表、实物等软硬件要求)

1、根据设计内容及要求,画出硬件电路原理结构框图,并说明输入和输出过程通道工作原理。

2、测试输入和输出通道,写出测试过程和方法。

3、画出主程序及各功能模块的程序流程图。

4、软件设计与调试。

5、系统联调。

6、结果分析与总结。

7、编写课程设计报告,绘制完整的系统电路图,并附程序清单。

8、对于有设想但最终未实现的功能的大致编程思路的阐述。

9、论述在设计过程中遇到的并且对你具有启发性的问题。

10、严禁抄袭,发现雷同,双方扣分。

三、课程设计工作进度计划:

二天:

布置任务、查阅参考资料

六天:

硬件和软件设计、硬件设计连线、分段调试

四天:

总体调试

三天:

编写设计说明书、考核

四、主要参考资料

[1]黄勤.微型计算机控制技术,机械工业出版社,2010

[2]蒋心怡等.计算机控制技术,清华大学出版社,2007

[3]于海生等.微型计算机控制技术,清华大学出版社,2009

指导教师(签名):

蒯锐教研室主任(签名):

杨晶鑫

2014年12月1日2014年12月1日

目录

1概述:

5

1.1设计目的5

1.2设计内容、步骤及要点5

2详细设计说明6

2.1硬件设计与调试6

3对该系统的进一步设想11

3.1定时加热11

3.2远程控制11

3.3不同时间设置不同温度11

4课程设计总结12

5软件使用说明12

6附录(参考文献,原代码:

)12

参考文献:

12

原代码:

12

 

1概述:

1.1设计目的

本课程的实训实际上是学生学习完《微机控制系统原理与应用》课程后,进行的一次全面的综合训练,其目的在于加深对计算机控制技术理论知识的理解和对这些理论的实际应用能力,提高对实际问题的分析和解决能力,以达到理论学习的目的,并培养学生应用计算机辅助设计和撰写设计说明书的能力。

1.2设计内容、步骤及要点

用一台计算机及相应的部件组成电阻炉炉温的自动控制系统,并使系统达到工艺要求的性能指标。

1.课程设计内容:

(1)设计内容及要求

电加热炉用电炉丝提供功率,使其将炉内温度稳定到给定的温度值。

在本控制对象电阻加热炉(或电水壶)功率为1KW,有220V交流电源供电,采用双向可控硅进行控制。

(2)工艺要求

按照规定的曲线进行升温和降温,温度控制范围为0—75℃,升温和降温阶段的温度控制精度为+1℃,保温阶段温度控制精度为+1℃。

(3)要求实现的系统基本功能

微机自动调节:

正常工况下,系统投入自动。

模拟手动操作:

当系统发生异常,投入手动控制。

微机监控功能:

显示当前被控量的设定值、实际值,控制量的输出值,参数报警时有灯光报警。

本课程设计包含两大部分内容:

设计报告和设计软硬件。

其中设计软硬件在题目验收时由指导教师检查,设计报告作为书面材料提交。

设计报告的主要内容有:

A、硬件设计

模拟量输入通道:

单端对地输入;输入电压信号量程为0~5VDC;输出码制为单极性二进制码。

模拟量输出通道:

采用电流输出方式。

选择主电路器件并设计主电路。

温度传感器的选择与安装。

B、软件设计

设计数据采集程序;

数据滤波程序;

标度变换程序;

控制计算程序(PID控制);

控制输出程序(限幅输出);

要求有参数(给定值、采样周期、PID参数)设定和修改功能;

实时显示控制回路的给定值、测量参数、控制量。

C、系统调试

硬件调试:

A/D通道调试;D/A通道调试。

软件调试:

各功能模块程序分别调试;软件联调。

硬件、软件联调。

系统综合实验。

2.设计步骤和要点

A、根据设计内容及要求,画出硬件电路原理结构框图,并说明输入和输出过程通道工作原理。

B、测试输入和输出通道,写出测试过程和方法。

C、画出主程序及各功能模块的程序流程图。

D、软件设计与调试。

E、系统联调。

F、结果分析与总结。

G、编写课程设计报告,绘制完整的系统电路图,并附源程序清单。

2详细设计说明

2.1硬件设计与调试

主要电路:

接线:

T-CON接8255的PC6,用于控制是否加热:

PC6=0时加热,PC6=1时风扇降温。

T-DETECT接ADC0809的IN0口,ADC0809采集温度模块的温度模拟信号量。

CS0809接208H,CS8279已固定接至238H,CS8255接218H。

交通灯:

PB口:

PB0123接绿灯,PB4567接红灯。

即:

PB0-DG1----PB7-DR4

K0—PA0:

下:

自动上:

手动

K1--PA7:

下:

不加热上:

加热(手动控制时有效)

交通灯:

1:

上2:

左3:

右4:

17以下绿灯亮1个

18绿灯亮2个

18绿灯亮3个

27绿灯亮4个

36红灯亮1个

45红灯亮2个

54红灯亮3个

63红灯亮4个

模拟量输入通道:

AD0809IN0口接温度控制的T-DETECT读入模拟量。

 

2.2软件设计与调试

软件调试过程中,根据理论设定相应的状态,再根据实验想象进行修正。

避免端口赋值时的干扰,变量的多次使用时避免交叉错误。

软件调试过程中也要适当的调整硬件电路。

软件优秀流程:

优点:

可以根据K0的值设置是否为手动状态通过跳转,执行相应的代码段。

程序中根据不同的温度范围设定不同的等表示温度:

;***********设置交通灯的程序****************

;<=17绿1个,18~26绿3个,27~35绿4个,36~44红1个,45~53红2个,54~62红3个,63~71红4个,>71黄4个

;输出1是灭掉

moval,11111111b;全灭

movdx,Z8255B

outdx,al

moval,Tvalue;ax存当前温度值

cmpal,10

jbLedT1

cmpal,30

jbLedT10

cmpal,60

jbLedT10

cmpal,90

jbLedT30

cmpal,120

jbLedT40

cmpal,150

jbLedT50

cmpal,180

jbLedT60

cmpal,210

jbLedT70

cmpal,240

jbLedT80

jmpLedT

LedT1:

;下限升温

MOVAL,01H

MOVDX,Z8255C

OUTDX,AL

jmpBEGIN

LedT10:

moval,11111110b

jmpPLedT

LedT20:

moval,11111100b

jmpPLedT

LedT30:

moval,11111000b

jmpPLedT

LedT40:

moval,11110000b

jmpPLedT

LedT50:

moval,11101111b

jmpPLedT

LedT60:

moval,11001111b

jmpPLedT

LedT70:

moval,10001111b

jmpPLedT

LedT80:

moval,00001111b

jmpPLedT

LedT:

;上限降温

MOVAL,42H

MOVDX,Z8255C

OUTDX,AL

jmpBEGIN

moval,00000000b

PLedT:

movdx,Z8255B

outdx,al

;***********设置交通灯的程序结束*************

滤波:

采用数字滤波中的比例调节,去8次采样的平均值作为一个采样值。

软件调节过程中的一些问题:

1)起初想用K1直接接T-CON控制是否手动加热。

调节时发现,当K1和PC6同时接T-CON时,两者的信号会相互干扰,不能正常调节。

2)数据转换值由于不是等比例放大,不易计算。

试验中根据实验现象记录相应的温的数字值,确定温度区间。

3对该系统的进一步设想

3.1定时加热

用时钟或定时器设定具体的时间点,开始加热。

解决方法:

可以采用时钟芯片、定时器、或中断的方式实现。

3.2远程控制

通过互联网实现物联,进行远程控制,实现远程设定时间、温度。

解决方法:

添加相应的网络模块联网实现远程控制。

3.3不同时间设置不同温度

程序设定具体的温度,与具体的时间相联系,在不同的时间达到不同的设定温度值。

解决方法:

与时钟芯片一同根据需求设定合理值。

4课程设计总结

汇编语言的知识忘了许多,再到这次的微型课程设计充满着挑战和趣味。

微型计算机原理起初学起来就觉得很难。

当要进行课程设计时心里面多少有些害怕和担心。

但是后面听了老师和同学的讲解之后,担心变少了很多,倒是跃跃欲试的冲动多了很多。

所以一直想尽自己最大的努力,做好这次的课程设计。

此次微机课程设计让我懂得了实践的重要性。

一方面,它加深与巩固了所学的各章节的理论,并将其综合运用,提高了我们综合运用知识;另一方面,培养了我们对专业知识学习的兴趣。

通过设计电阻炉炉温自动控制系统将软硬充分相结合,学会了很多有用的知识锻炼了软硬相互协调的能力。

同时也增强了全面系统考虑问题的能力,以及硬件设计能力。

这对以后的学习和工作具有重要的指导意义!

即使课本知识掌握了,如果不会综合运用,也是一些支离破碎的无用的知识,而如果能够运用而实际动手能力很差,理论与实践结合不起来,学得再好也没用。

这次课程设计恰好是将课本知识与的巩固与综合运用结合起来,再加上实际动手能力的培养三者结合起来的。

这次设计让我明白了一个道理,做任何事前之前,不管完成它的时间有多么充裕,开始的态度都要摆好,都要认真去对待,到最后才不会后悔。

最后谢谢老师这个学期的指导和帮助!

5软件使用说明

程序开始运行后,根据K0确定手动/自动:

K0在下:

自动K0在上:

手动。

手动状态下根据K1确定是否加热:

K1在下:

不加热K1在上:

加热。

自动状态下按D开始设定温度,按数字键依次设定十位、个位。

按E确定设定值。

设定温度后,温度模块自动调节温度,设定值与采样值相等时交通灯变为全黄。

6附录(参考文献,原代码:

参考文献:

[1]黄勤.微型计算机控制技术,机械工业出版社,2010

[2]蒋心怡等.计算机控制技术,清华大学出版社,2007

[3]于海生等.微型计算机控制技术,清华大学出版社,2009

[4]

源代码:

;*****************************************

;电阻炉炉温自动控制系统

;yinyongxian

;2014年12月4日14:

19:

34

;yinyongxian@

;*****************************************

;FOREAT598

CSADEQU0208H

Z8279EQU0239H

D8279EQU0238H

Z8255EQU021BH

Z8255AEQU0218H

Z8255BEQU0219H

Z8255CEQU021AH

LEDMODEQU00;左边输入,八位显示外部译码八位显示

LEDFEQEQU38H;扫描频率

LEDCLSEQU0C1H;清除显示RAM

READKBEQU40H

COUNTEQU8

CODESEGMENT

ASSUMECS:

CODE,DS:

CODE

START:

PUSHCS

POPDS

MOVDX,Z8255;设置A口为输入,B口为输出,C口为输出

MOVAL,90H;10010000b

OUTDX,AL

MOVDX,Z8255C;交通灯全灭

MOVAL,0FFH

OUTDX,AL

CALLDELAY

CALLDELAY

MOVDX,Z8279;初始化8279

MOVAL,LEDMOD

OUTDX,AL

MOVAL,LEDFEQ

OUTDX,AL

MOVAL,LEDCLS

OUTDX,AL

;------------------以上为初始化-----------------------

MOVAL,0

MOVCS:

SIVAL,AL

;------------------手动方式决定是否加热---------------

hand:

MOVDX,Z8255A

inal,dx

testal,80h

jznext;为0则

movAL,0H;为0则加热

MOVDX,Z8255C

OUTDX,AL

jmpBEGIN

next:

moval,40h;为1则bu加热

MOVDX,Z8255C

OUTDX,AL

;---------------End:

手动方式决定是否加热--------------

;******************采集数据并显示*********************

BEGIN:

MOVBX,0

MOVCL,COUNT

MOVCH,0

BB:

MOVDX,CSAD;采样A/D值

MOVAX,0

OUTDX,AL

CALLDELAY

INAL,DX

ADCBX,AX;求8次采样平均值BX存储8次的总值。

LOOPBB

MOVAX,BX

RCRAX,1

RCRAX,1

RCRAX,1

MOVTvalue,AL

CALLCHANGTOBCD;转化为十进制的温度值

PUSHAX;存Ax

CALLDIS

;******************采集数据并显示结束*****************

;***********设置交通灯的程序****************

;<=17绿1个,18~26绿3个,27~35绿4个,36~44红1个,45~53红2个,54~62红3个,63~71红4个,>71黄4个

;输出1是灭掉

moval,11111111b;全灭

movdx,Z8255B

outdx,al

moval,Tvalue;ax存当前温度值

cmpal,10

jbLedT1

cmpal,30

jbLedT10

cmpal,60

jbLedT10

cmpal,90

jbLedT30

cmpal,120

jbLedT40

cmpal,150

jbLedT50

cmpal,180

jbLedT60

cmpal,210

jbLedT70

cmpal,240

jbLedT80

jmpLedT

LedT1:

;下限升温

MOVAL,01H

MOVDX,Z8255C

OUTDX,AL

jmpBEGIN

LedT10:

moval,11111110b

jmpPLedT

LedT20:

moval,11111100b

jmpPLedT

LedT30:

moval,11111000b

jmpPLedT

LedT40:

moval,11110000b

jmpPLedT

LedT50:

moval,11101111b

jmpPLedT

LedT60:

moval,11001111b

jmpPLedT

LedT70:

moval,10001111b

jmpPLedT

LedT80:

moval,00001111b

jmpPLedT

LedT:

;上限降温

MOVAL,42H

MOVDX,Z8255C

OUTDX,AL

jmpBEGIN

moval,00000000b

PLedT:

movdx,Z8255B

outdx,al

;***********设置交通灯的程序结束*************

;------------------手动吗?

------------------

MOVDX,Z8255A

inal,dx

testal,01h

jzAuto;为0自动

JMPhand

;------------------手动选择结束--------------

;******************自动方式******************

Auto:

CALLSET_T

POPAX;取AX

MOVBL,CS:

SIVAL;SIVAL获得设定的值。

CMPAL,BL

jnenotE

moval,0

movdx,Z8255B

outdx,al

jmpBEGIN

notE:

CMPAL,BL

JADOWN

MOVAL,01H

JMPUP

DOWN:

MOVAL,42H

UP:

MOVDX,Z8255C

OUTDX,AL

JMPBEGIN

;***************自动方式结束***************

;----------------主程序结束----------------

SET_TPROCNEAR

CALLREAD_KEY

CMPAL,0

JNZTHE_KEY;不为0则有键读入

JMPIN_END

THE_KEY:

MOVAL,BL

CMPAL,0DH

JZST_K

JMPEND_ST

ST_K:

CALLREAD_KEY

CMPAL,0FFH

JNZST_K;等待输入

MOVAL,BL

CMPAL,0EH;IFBEING'E'KEY,endSET

JNZ%H;非'E'

JMPEND_ST

%H:

;设置高位

MOVBL,AL

MOVCH,BL

CMPAL,0AH;输入不是数字,继续读入

JNCST_K;JNC,当CF=0时跳转

CALLDIS_CHAR1;显示第一个值

ST_L:

;设置低位

CALLREAD_KEY

CMPAL,0FFH

JNZST_L

MOVAL,BL

CMPAL,0EH;IFBEING'E'KEY,设置低位,否则只设置了高位

JNZ%L

JMPEND_ST

%L:

MOVBL,AL

MOVCL,BL

CMPAL,0AH;;输入不是数字,继续读入

JNCST_L

CALLDIS_CHAR2;显示第二个值

JMPST_K

END_ST:

MOVAL,CH

MOVBL,CL

MOVCL,4H

RORAL,CL;al右移四位

ADDAL,BL

MOVCS:

SIVAL,AL

IN_END:

RET

SET_TENDP

READ_KEYPROCNEAR

MOVDX,Z8279

INAL,DX;读8279状态

ANDAL,07H;屏蔽D7-D3

JNZGETVAL;判断是否有键输入

MOVAL,0H;置标志(无键输入)

JMPNKBHIT

GETVAL:

MOVAL,READKB;读FIFORAM命令

OUTDX,AL

MOVDX,D8279

INAL,DX;读键

ANDAL,3FH;屏蔽SHIFT和CTRL键

MOVBL,AL;置返回键值

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1