基于单片机的温度采集系统报告docWord格式.docx
- 文档编号:16371413
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:14
- 大小:238.05KB
基于单片机的温度采集系统报告docWord格式.docx
《基于单片机的温度采集系统报告docWord格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的温度采集系统报告docWord格式.docx(14页珍藏版)》请在冰豆网上搜索。
0809
74LS373
说明:
该测量系统由单片机实现烧水锅炉各功能的控制。
锅炉具有自动加水,沸水控制,加热控制等功能。
初始化单片机时系统进入锅炉加水功能,当水位达到上限水位时,锅炉产生一个中断脉冲中断单片机,跳出加水,进入单片机控制锅炉加热功能,当锅炉中水的温度达到80度时,降低加热电压,并允许使用锅炉中的水。
当锅炉中的水用至低于下限水位时,锅炉同样会产生一个中断脉冲中断单片机,回复前面过程,再次进行加水控制,如此达到单片机控制热水锅炉的温度测控功能。
其中,系统还设置有温度的三级加热控制。
当温度高于80度时,控制由全电压加热转到半电压加热;
当温度高于100度时,又会控制停止加热,即割断加热线路;
当温度由高温再次降到90度以下时,系统又会重新启动半电压加热,如此反复控制。
2、单元电路设计
1)锅炉示意电路:
如上图,通过七个控制线端与中央系统相连,达到控制和信息索取。
而温敏传感器则另加。
其中的进出水口是系统控制的电动阀门,通过系统的高低电平表示阀门的开合,以达到自动装水、自动饮水的目的,起到了对锅炉和人的双方保护的作用,防止了因水的匮乏及溢出对锅炉的伤害,也不会因人喝了未煮沸的水而产生的不良后果。
高低警戒水位则起到对水位的监控作用,防止水位过低烧毁锅炉,也防止水位过高溢出产生其他后果,由于单片机的中断触发方式设置的是下降沿触发,这也是出于锅炉水位变化的缓慢性,为防止误触发而设置的,而我们又假定水淹没水位传感器时表高电平,水未淹没水位传感器时取低电平,这样当高水位有效时传感器产生的是上升沿,为了产生下降沿,在它的输出端接入了一个反相器。
三级加热则是会产生三个级别的加热,分别是全压加热、半压加热和不加热,如图,D1和D2是控制加热电源的双向晶闸管,它们的功能如下:
D1/P1.3
D2/P1.2
功能
不加热
1
半压加热
全压加热
D1,D2的触发端则分别与单片机的P1.3,P1.2口相连,达到控制的目的。
2)测温电路:
上面只讲了锅炉的控制模型,现在讲测温电路。
我采用分度号Cu100的温敏电阻,如图电阻Rx。
环境温度为0℃时,Rx=100Ω;
测温上限128℃时,Rx=155Ω。
通过与R1对电源电压(5V)分压,在测量范围内输出2.5~1.96V的电压信号Vi。
集成运放A1及其外围电阻实现对Vi进行放大,以输出符合ADC输入的0~2.5V的电压。
理论计算如下:
Vo=(R3/R4)*VCC—(R3/R2)*Vi
R3=1500Ω,R2=330Ω,R4=660Ω,VCC=5V,这样,Vo=(R3/R2)(2.5—Vi),当Vi在2.5~1.96V内变化时,Vo将在0~2.5V内变化,同时0度对应0V,128度对应2.5V,符合了数据处理的要求。
3)水可饮用指示电路:
如图所示,通过将一个发光二极管与单片机的P1.5脚相连,当P1.5输出高电平时,发光二极管发光,表示锅炉内水可饮用;
而P1.5脚输出低电平时发光二极管不发光,则锅炉内水不可饮用。
电阻则是限流用。
4)模/数转换电路:
如图所示,该电路由三部分组成,单片机89C51、ADC0809和D触发器。
ADC0809有八个模拟信号输入端,由于该系统只需一路模拟信号的转换,所以将除IN-0以外的输入端都接地,而ADC0809的模拟输入端选择地址信号全接地,这样,系统就默认了IN-0输入。
ADC0809的启动端接入89C51的P1.7口,转换结束中断信号则接入89C51的P1.6口,数字信号输出口使能输入信号接入89C51的P1.4口,这几个口的信号共同达到控制ADC0809的目的。
ADC0809的转换时钟信号由89C51的ALE端信号经D触发器分频后接入。
5)温度显示电路:
图中电路实现温度的三位显示,因为系统测量温度的上限是128度。
首先,电路通过74LS373锁存P0来的分时复用字型码信息,通过各限流电阻传到各LED进行显示。
而LED的显示也是通过89C51的控制分时显示的。
由于选用的是共阴级LED,所以,当89C51的控制信号为低电平时,表示选择该LED,此时送出的字型码也是该LED的显示数据,LED点亮。
6)上电复位电路:
单片机在启动上电时都应该复位内部,以达到正常工作的目的。
电路中,RST接到89C51的RST端,电容在上电的瞬间短路,RST端接入高电平,单片机复位;
达到稳态后,电容相当于断路,RST接为低电平,失去复位功能。
7)时钟电路:
任何时序电路都需要参考时钟,由于89C51有内置的时钟电路,所以只须外接晶振便可。
该电路采用12MHz晶振,补偿电容C1、C2选用典型值。
8)电源电路
电路采用220伏市电供电,经电桥整流后再经7805三端稳压成5伏电路的供电电压。
C3、C4起到的是平缓纹波的作用,以期给电路提供更稳定的电压,减少因电源波动带来的系统误动作。
9)整体电路如下图:
3、软件程序设计
1)程序主流程如下:
系统上电复位开始执行程序。
通过对各个端口初始化,然后进入进水程序,等高警戒水位发出中断后,说明水已经加满,这时跳出加水程序;
再对水进行加热到80度,此时水遍可饮用,转换加热等级,等待INT0中断,若中断则水已用至低警戒水位,再转入加水程序,如此循环。
开始
初始化
加温到80度
停止加温
等待用水完
水用完
INT0中断
2)判温程序流程如下:
将温度值先与80度值比较,若大于,则转为半压加热,并打开出水阀,接着执行下面的操作,若小于,则跳出返回;
再与90度值比较,若大于,则继续进行下面的比较,若小于,则跳出返回;
最后与100度值比较,若大于则关闭加热系统并返回,若小于,同样返回。
通过这个判温电路,以形成闭环测控温功能。
温度值
大于80度
大于90度
大于100度
关闭加热
结束
转半压加热
开出水阀
N
程序代码:
ORG0000H
AJMPmain;
ORG0003H
AJMPwater_in;
ORG0013H
AJMPINT_1;
ORG0030H
main:
AJMPheat_water;
initial:
SETBP1.4;
停止ADC
MOVDPH,#0C0H;
LED输出‘短横’初始
MOVDPL,#0FFH;
MOVA,#08H;
MOVX@DPTR,A;
AJMPdelay;
CLRP1.0;
关闭进水口
CLRP1.1;
关闭出水口
SETBIT0;
边沿触发方式中断
SETBIT1;
边沿触发方式中断
SETBEA;
开中断
SETBEX0;
SETBEX1;
RET;
;
water_in:
AJMPinitial;
JNBIE0,N_int;
判断是否是中断启动该子程序
SETBACC.0;
CLREX0;
CLRIE0;
N_int:
CLRP1.1;
SETBP1.0;
打开进水口
wait:
JNBCY,wait;
等待进水满
NOP
JBACC.0,int_0;
int_0:
RETI;
INT_1:
CLREX1;
CLRP1.0;
SETBCY;
heat_water:
CLRP1.2;
SETBP1.3;
RETURN:
CLRP1.7;
启动ADC
SETBP1.7;
wait_ADC:
JNBP1.6,wait_ADC;
等待转换结果
MOVDPH,#0FFH;
读ADC
MOVDPH,#0FFH;
MOVXA,@DPTR;
MOVR3,A;
ANLA,#7FH;
数据处理
MOVB,#64H;
DIVAB;
MOVR0,A;
MOVA,B;
MOVB,#10;
MOVR1,A;
MOVR2,A;
MOVDPTR,#tab;
百位显示
MOVA,R0;
MOVCA,@A+DPTR;
MOVDPTR,#7FH;
十位显示
MOVA,R1;
MOVDPTR,#0BFH;
个位显示
MOVA,R2;
MOVDPTR,#0DFH;
MOVA,R3;
判断是否大于80度
MOVR0,#50H;
CLRCY;
SUBBA,R0;
JBCY,RETURN;
SETBP1.5;
SETBP1.2;
SETBP1.1;
判断是否大于90度
MOVR0,#5AH;
判断是否大于100度
MOVR0,#64H;
SUBBA,R3;
JBCY,RETURN;
CLRP1.3;
SJMPRETURN;
tab:
DB3FH,03H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
字型码数据
delay:
MOVR7,#0FFH;
延迟子程序
LOOP:
DJNZR7,LOOP;
END;
4、结论与展望
本次设计包括锅炉示意电路部分,测温电路部分,水可饮用指示电路部分,模数转换电路部分,温度显示电路部分,上电复位电路部分,时钟电路部分,电源电路部分共八部分。
设计实现了温度的测量控制,实现了锅炉的自动加水,实现了沸水的控制,并且实现了温度的三级加热控制,温度达到八十摄氏度时转为半电压加热,温度达到一百摄氏度时停止加热,温度下降到九十摄氏度以下的时候又转为半电压加热。
温度的测量精确到了度。
对于对设计的展望,希望下次能设计制作更加精确,实现功能更多更加完善的锅炉温度控制系统。
例如完成这次没有加入的报警系统,使得锅炉安全性能更好。
5、心得体会与建议
(1)通过这次课程设计,加深对单片机理论方面的理解。
(2)了解和掌握单片机应用系统的软硬件设计过程、方法及实现,为以后设计和实现单片器应用系统打下良好基础。
(3)通过简单课题的设计练习,了解必须提交的工程文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。
作为电子信息类本科专业学生,应当具有较强的计算机应用水平,也应具有一定的计算机应用开发能力。
微机原理及接口技术是电子信息专业网络教育计算机基础及应用课程,这些课程都具有很强的实践性。
在学习教科书、阅读课程教学光盘,掌握理论知识的同时,还应注重实践、理论联系实践,我们必须具有一定的动手能力。
本实践性课程为此而开设,具有很大的意义。
微机原理及接口技术等计算机汇编课程都是实践性很强的课程。
学习这些课程不能仅满足于看懂书上的内容或程序,而应当熟练地掌握程序设计或应用开发的全过程,即独立编写源程序,独立上机调试程序,独立运行程序和分析结果;
通过这种完整实践过程的锻炼,将加深学生对书本或光盘上内容的理解和掌握。
因此,就必须十分重视实践环节。
通过本实践环节,基本到达所要求的目的,加深了对课堂讲授内容的理解,掌握各种语言的语法规则;
熟悉所用的计算机系统的操作方法,了解和熟悉程序开发环境;
学习上机调试程序的方法和技巧,提高编程能力。
这次微机原理课程设计历时三个星期,在设计当中,又学到很多的的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
平时上课、实验都是基础性的知识,通过本次课程设计,使我们更能独立的认识与完成必要的汇编。
课程设计中完成代码汇编,画程序方框图是很有必要的。
通过程序方框图,在做设计的过程中,我们每一步要做什么,每一步要完成什么任务都有一个很清楚的思路,而且在程序测试的过程中也有利于查错。
其次,我对于编程工具的使用还不熟练,经过一段实践,对于排错、查错,看每一步的运行结果,了解每个寄存器的内容以确保程序的正确性上有了很大程度的提高。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。
在设计的过程中也遇到不少问题,在同学的帮助下也迎逆而解。
同时在设计的过程中发现许多不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
通过这次的课程设计,极大地丰富了我的单片机方面的理论知识,同时复习了模电、数电方面的知识,并较以前有了更深、更新的理解,对即将面临的工作增添了信心。
通过系统地构思、设计,加强了我的各方面的能力,包括逻辑思维能力,整体协调能力,以及自我学习的能力。
但同时,在设计的过程中也碰到不少棘手的问题,通过对它们的解决,不仅锻炼了我解决问题的能力,丰富了我看待问题方式的经验,更重要的是它坚定了我的意志,增加了我面对各种未知问题的勇气。
最后感谢老师积极耐心的指导,使得这次课程设计顺利圆满的完成。
6、附录
器件名称
数值
器件个数
R1
100
R2
330
R3
1.5k
R4
660
R5
温敏电阻Rx
100~155
R
8
89c51
ADC0809
D触发器74LS74
稳压芯片7805
共阴极LED
3
发光二极管
C1
0.1u
C2
C
6
Y0
12MHz
双向晶闸管D
2
T1
U9
A1
7、参考文献
1.徐晨,《微机原理及运用》,北京:
高等教育出版社,2004年
2.高峰,《单片微型计算机原理与接口技术》,北京:
科学出版社,2007年
3.胡寿松主编.《自动控制原理.第四版》.北京:
科学出版社,2001年
4.刘豹主编.《代控制理论.第二版》.北京:
机械工业出版社,2004年
5.李刚民,曹巧媛.《单片机原理及使用技术[M]》.北京:
高等教育出版社,2005年
6.徐爱钧.《051单片机实践教程[M]》.北京:
电子工业出版社,2005年
7.胡汉才.《单片机原理及其接口技术[M].2版》.北京:
清华大学出版社,2004年
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 温度 采集 系统 报告 doc