基于温度控制的单片机课程设计.docx

上传人:b****5 文档编号:30118911 上传时间:2023-08-05 格式:DOCX 页数:15 大小:167.64KB
下载 相关 举报
基于温度控制的单片机课程设计.docx_第1页
第1页 / 共15页
基于温度控制的单片机课程设计.docx_第2页
第2页 / 共15页
基于温度控制的单片机课程设计.docx_第3页
第3页 / 共15页
基于温度控制的单片机课程设计.docx_第4页
第4页 / 共15页
基于温度控制的单片机课程设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

基于温度控制的单片机课程设计.docx

《基于温度控制的单片机课程设计.docx》由会员分享,可在线阅读,更多相关《基于温度控制的单片机课程设计.docx(15页珍藏版)》请在冰豆网上搜索。

基于温度控制的单片机课程设计.docx

基于温度控制的单片机课程设计

 

单片机课程设计说明书

指导老师:

王伟赵文祥

 

姓名:

李龙

专业:

自动化0801

学号:

3080502027

所在学院:

电气学院

 

二〇一一年7月6日

 

设计题目:

单片机温度控制系统

(1)设计任务

编制和调试单片机温度控制程序。

要求通过键盘设定温度给定值,使铝块温度保持在该温度的±1℃范围内。

温度给定值(37℃-50℃)

基本内容

⏹熟悉单片机温控系统硬件结构和温控原理。

了解常用的温控算法。

⏹编制测温程序。

A/D转换值在LED显示器上显示,铝块温度由插入铝块深孔中的温度计读数反映。

实测铝块在升温和降温过程中的温度/A/D转换关系表。

⏹编制单片机温控程序,在PC机上编译后,经串行口下载到单片机,并调试。

(2)背景知识

温度是工业生产中主要的被控参数之一,像冶金、机械、化工、食品各类工业中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的处理温度要求严格控制。

计算机温度控制系统使温度控制指标得到大幅度提高。

除了这些部门之外,温度控制系统还广泛应用于其他领域,是用途很广的一类工业控制系统。

温度控制系统常用来保持温度恒定或者使温度按照某种规定的程序变化。

在现代社会中,温度控制不仅应用在工厂生产方面,其作用也体现到了人们生活的各个方面。

随着人们生活质量的提高,酒店厂房及家庭生活中都会见到温度控制的影子,温度控制将更好地服务于社会。

温度控制过程是单片机定时对温度进行检测,经A/D转换芯片得到相应的数字量,经过计算机进行数据转换,得到应有的控制量,去控制加热功率,从而实现对温度的控制。

采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。

(3)系统组成

图1:

单片机温度控制系统框图

※电热丝为普通电烙铁用电热丝,用2根,固定在铝块的左右两侧深孔内,使铝块加温。

※热敏电阻为负温度系数热敏电阻,其阻值随周围的温度升高而减小。

热敏电阻嵌入铝块内部来感知铝块温度,通过R/V转换电路,将铝块温度转化为对应的电压。

※ADC0809为模/数转换器,将R/V转换电路的模拟输出电压转换为对应的数字量,送单片机。

※SSR为过零触发固态继电器,只有在交流电压的过零点附近才能使双向晶闸管触发导通。

该器件能对交流电进行控制的最小周期为半个周波,即10ms。

(4)硬件结构

温度控制系统的硬件电路包括温度检测电路、LED显示电路和键盘控制电路等部分。

AD0809是一种8位逐次逼近式A/D转换器,可以和微机直接接口。

AD0809硬件接线图如图2所示。

图中模拟通道的地址为地址总线中的低三位,ALE及START信号由地址选中及写信号提供,在产生地址信号时,地址总线的低3位A2、A1、A0不参加译码,编程时,低三位地址将代表所选中的模拟通道号。

本系统采用通道0。

图2:

ADC0809硬件接线图

本系统采用4×8的键盘,显示原理图见图3。

CPU对键盘的扫描采取程序控制方式,通过延时来解决按键抖动问题。

扫描原理

  1、判断键盘中有无键按下将全部列线置低电平,然后检测行线的状态。

只要有一行的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。

若所有行线均为高电平,则键盘中无键按下。

2、判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。

其方法是:

依次将列线置为低电平,即在置某根列线为低电平时,其它线为高电平。

在确定某根列线位置为低电平后,再逐行检测各行线的电平状态。

若某行为低,则该行线与置为低电平的列线交叉处的按键就是闭合的按键。

表1:

键码分配表

7

8

9

4

5

6

1

2

3

0

图3:

LED及键盘显示原理图

LED数码管结构简单,如图4所示。

LED的字形码和字位口表分别见表2和表3。

本系统采用共阳极八段数码管,采用动态显示方式,可以节省I/O口。

图4:

LED数码管结构图

表2:

LED的字形码

显示字符

共阴极

共阳极

0

3FH

0C0H

1

06H

0F9H

2

5BH

0A4H

3

4FH

0B0H

4

66H

99H

5

6DH

92H

6

7DH

82H

7

07H

0F8H

8

7FH

80H

9

6FH

90H

A

77H

88H

B

7CH

83H

C

39H

C6H

5EH

0A1H

79H

86H

71H

8EH

表3:

字位口表(从高位起)

位置

G5

G4

G3

G2

G1

G0

数值

20H

10H

08H

04H

02H

01H

(5)控制原理

本温度控制系统是一个闭环反馈系统,将所得的温度值与预设值相比较得到偏差,通过对偏差的处理获得控制信号,去调节加热器的通断时间,从而实现温度的显示与控制。

通过热敏电阻可以对被控对象进行温度检测。

经过R/V变换将热敏电阻阻值变化转换成电压,经A/D转换为数字量交由CPU处理。

温度控制采用晶闸管调功方式。

双向晶闸管串在50Hz交流电源和加热器电路中,只要在给定周期里改变晶闸管开关的接通时间即可。

这可以用一条I/O线,通过程序输出控制脉冲。

为了达到过零触发的目的,需要交流电过零检测电路。

此电路输出对应于50Hz交流电压过零时刻的脉冲,作为触发双向晶闸管的同步脉冲,使晶闸管在交流电压过零时刻导通。

周波控制法:

为实现温度控制,以某一时间间隔(例如200ms)为1个控制周期Tc,调整每个控制周期中加到固态继电器输入端的控制信号uc的宽度tp,即可改变加到电热丝上的电压uo和平均功率。

图5:

周波控制示意图

系统内存分配表见表4。

表4:

内存分配表

RAM地址

功能

50H

ADC转换后的温度值

51H

温度预设值

79H-7EH

显示缓冲区

LED的内容将随着温度变化而相应变化,实际读出铝块在升温和降温过程中的温度,即可建立温度-A/D转换值关系表见表5。

表5:

测量温度与A/D对应表

A/D数值

测量温度

A/D数值

测量温度

8D

50

9F

43

8E

49.6

A0

42.6

8F

49

A1

42

90

48.8

A2

41.8

91

48.6

A3

41.6

92

48.2

A4

41.2

93

48

A5

41

94

47.6

A6

40.8

95

47

A7

40.6

96

46.8

A8

40

97

46.6

A9

39.6

98

46

AA

39

99

45.6

AB

38.8

9A

45

AC

38.6

9B

44.8

AD

38

9C

44.6

AE

37.6

9D

44

AF

37

9E

43.6

 

 

(6)程序流程

单片机温度控制系统程序主要由主程序、T0中断服务程序、显示子程序、键盘扫描子程序及温度检测子程序组成。

T0中断服务程序是温度控制的主体程序,用于采集热敏电阻检测到的温度值,进行均值滤波,控制P1.0输出高低电平以便接通或断开继电器。

实验系统的晶振频率为6MHz。

定时器T0的中断服务程序入口地址是000BH,选用方式1。

主程序

主程序在清暂存单元、清显示缓冲区、设置有关标志、完成T0初始化、开中断后,循环地进行键盘扫描和温度显示,等待T0中断。

图6:

主程序流程图

显示子程序

•在8032RAM存储器中设置六个显示缓冲单元79H-7EH,分别存放6位显示器的显示数据。

•显示译码:

程序存储器中建立字形码常数表,查表得出对应数据和字符的字形码。

•输出显示:

输出字形码到显示端口。

•采用动态显示方式,即一位一位地轮流点亮6位显示器。

程序流程图见图7。

图7:

显示子程序框图

键盘扫描子程序

⏹键盘的行线通过电阻接+5V,当键盘上没有键闭合时所有的行线和列线都断开,行线都为高电平。

当键盘上某一键闭合时,则该键所对应的行线和列线都短路。

⏹CPU逐行逐列地检查键盘的状态,可判断键盘上有无键闭合。

CPU对键盘上闭合键的键号确定,可根据行线和列线的状态计算求得,也可以根据行线和列线的状态查表求得。

其程序流程图见图8。

图8:

键盘扫描子程序框图

T0中断服务程序

⏹T0设定10ms定时中断一次,对测量结果进行采样。

⏹调节周期定为0.5秒

其程序流程图见图9。

图9:

T0中断服务程序

温度检测

电压信号输入至0809的0通道转化为数字量,CPU读取转换结果,查表即可得到铝块当前温度值。

图10:

温度检测子程序

(7)调试步骤

⏹第一天编写并调试显示子程序,成功后将它封装,便于调用。

⏹第二天编写并调试键盘扫描子程序,由于准备充分,进行的比较顺利。

⏹通过A/D采样程序,在铝块温度下降过程中读取温度值和A/D采样值,得到了测量温度与A/D的对应关系表,为下一步的进行做好了准备。

⏹采用周波控制法,对于不同的温差采用不同的加热时间,取得了较好的控制效果。

⏹各个子程序调试成功后对系统进行了联调,通过修改参数,使控制结果最优化。

⏹最后对程序进行了完善,对输入范围进行了限制,增加了手动停止功能,并且能多次输入温度预设值。

⏹运行程序后输入温度预设值如45℃,在LED显示器左边3位显示,右边3位显示当前铝块温度值,如果当前温度值小于预设值,P1.0为低,控制加热器对铝块进行加热,同时指示灯亮。

相差小于1度时停止加热,误差小于±1℃。

⏹我们采用模块化编程,思路清晰,使程序简洁、可移植性强。

课程设计心得

为期一周的单片机课程设计就要结束了,纵观整个设计过程,可以说我收获很大。

通过理论分析与实践论证,许多问题都有了较好的解决方案。

这次设计提高了我的动手和动脑能力,更让我们体会到了理论与实践相结合的重要性,使我在单片机的基本原理以及编程设计思路技巧的掌握方面都向前迈了一大步。

通过这次课程设计,我更加看清了自己的不足。

为了搞好这次课程设计,我查阅了许多资料。

在老师和同学的帮助下,最终完成了设计任务。

通过实践,巩固了理论知识的学习,提高了实际应用所学知识的能力,还积累了许多宝贵的经验。

特别是老师严谨冶学的态度给了我很大启发。

单片机温度控制系统综合运用了微机原理、自动控制原理、模拟电子技术、数字控制技术、键盘显示技术等诸多方面的知识,是对所学知识的一次综合测试。

总之,通过这次设计,我进一步熟悉单片机编程,调试能力也得到了较全面的锻炼和提高。

参考文献

【1】董少明.单片机原理与应用技术.北京:

北京理工大学出版社,2009.

【2】徐煜明,韩雁.单片机原理及接口技术.北京:

电子工业出版社,2005.

【3】杨居义.单片机课程设计指导.北京:

清华大学出版社,2009.

【4】胡汉才.单片机原理及其接口技术.北京:

北京理工大学出版社,2004.

 

致谢:

感谢老师对我的悉心指导,您辛苦了!

 

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

当前位置:首页 > 小学教育 > 其它课程

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

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