温度监控系统课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
温度监控系统课程设计报告
1 设计背景
1.1 设计目的及意义
随着现代计算机和自动化技术的发展,作为各种信息的感知、采集、转换、传输相处理的功能器件,温度传感器的作用日益突出,成为自动检测、自动控制系统和计量测试中不可缺少的重要技术工具,其应用已遍及工农业生产和日常生活的各个领域。本设计就是为了满足人们在生活生产中对温度测量系统方面的需求。
(1)在学习了课程后,为了加深对理论知识的理解,学习理论知识在实际中的运用,培养动手能力和解决实际问题的经验。
(2)通过实验提高对单片机的认识,提高软件调试能力。
(3)进一步熟悉和掌握单片机的结构及工作原理,通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。
(4)通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
(5)熟悉温度控制的工作原理,选择合适的元件,绘制系统电路原理图,运用单片机原理及其应用,进行软硬件系统的设计和调试,加深对单片机的了解和运用,进而提高自己的应用知识能力、设计能力和调试能力。
1.2 总体设计思路
本设计以单片机为基础,温度监控系统大致上可以分为以下几个步骤:
1.2.1系统分析过程
(1)根据系统的目标,明确所采用温度监控系统的目的和任务。
(2)确定系统所在的工作环境。
(3)根据系统的工作要求,确定系统的基本功能和方案。
1.2.2 系统设计内容
(1)构思设计温度监控系统的工作流程。
(2)对要求设计的系统进行功能需求分析,考虑多种设计方案,比较各方案的特点,并确定合理可行的方案,并设计相应的功能结构。
(3)根据系统的控制要求,选择合适型号的芯片及元器件。
(4) 设计以单片机为核心的控制程序。
(5) 电路板及其结构的设计。
(6) 进行系统的调试,完成最终的设计。
2 总体设计方案设计
2.1 系统框图
本设计为无线电控制电路,系统框图如下所示: 图1-1 系统框图
2.2 系统功能
此设计以单片机为核心的温度监控系统,其功能是:平常状态下可以做温度计使用。当温度超过预设温度时二极管会闪烁报警,当温度降下时二极管则停止闪烁。
电路设计及功能如下所述:
本设计大体可分为三个部分,即温度采集,数码显示,报警电路。温度采集部分利用DS18B20进行温度采集,感知温度,后数码显示出温度,若温度超过了预设温度报警电路则启亮发光二极管,闪烁。整体电路图如下所示:
图2-5 温度监控系统电路图
复位电路 晶振电路 报警电路 单片机AT89C51 温度传感器 显示电路
3 系统的软件结构设计
3.1 设计的流程图
3.2 系统部分程序设计及分析
3.2.1 复位子程序
(1)主机将信号线置为低电平,时间为480-960uS。
(2)主机将信号线置为高电平,时间为15-60uS。
(3)DS18B20发出60-240uS的低电平作为应答信号,主机收到此信号才操作。
复位子程序如下所示:
char fuwei(void)
{
unsigned char i;
s=0;
for(i=255;i>0;i--);
s=1;
for(i=200;i>0;i--);
}
3.2.2 读子程序
(1)主机将信号线从高电平拉至低电平1uS以上,再升为高电平,产生读起始信号。
(2)从主机将信号线从高电平拉至低电平15-60uS的时间内,DS18B20将数据放到信号线上,完成1个读周期。
(3)在开始另一个读周期前,必须有1uS以上的高电平恢复期。
读子程序如下所示:
unsigned char duchu(void)
{
unsigned char i,j,t=0,w=1;;
for(i=0;i<8;i++)
{
t=t>>1;
s=0;
_nop_();
_nop_();
s=1;
for(j=10;j>0;j--);
if(s==1)
t=t|0x80;
else
t=t|0x00;
for(j=100;j>0;j--);
}
return(t);
}
3.2.3 写子程序
(1)主机将信号线从高电平拉至低电平,产生写起始信号。
(2)从信号线的下降沿开始,在15-60uS的时间内,DS18B20对信号线检测,如高则写1,低则写0,完成1个写周期。
(3)在开始另一个写周期前,必须有1uS以上的高电平恢复期。
写子程序如下所示:
unsigned char xieru(unsigned char o)
{
char i,j;
for(i=0;i<8;i++)
{
if((o&0x01)==0)
{
s=0;
for(j=35;j>0;j--);
s=1;
}
else
{
s=0;
for(j=2;j>0;j--);
s=1;
for(j=33;j>0;j--);
}
o=o>>1;
}
}
3.2.4 其他程序
本设计中除了上述三个子程序外,还涉及到显示程序,数据处理程序,中断程序和延时程序等,由于篇幅原因不作具体介绍.
4 结论
通过这次毕业设计,提升了我的自学能力,通过不断的查阅资料,通过老师的不断讲解,来解决其中遇到的困难,比如如何解决DS18B20控制问题,如何解决报警问题等。
本文所讨论的设计采用了AT89C51单片机作为系统的中央控制单元,DS18B20作为温度采集器,并结合软件编程,实现温度传感电路与单片机的结合。该系统具有更高速、更灵敏、更简捷地获取被分析、检测、控制对象的温度信息的能力,同时具有良好的抗干扰及环境适应能力(测温范围-55 ℃~+ 125 ℃)。因其体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域,且系统结构较为简单,可大规模的采用,成本低廉。