




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、word. 课程设计报告课程设计报告温度采集报警系统的设计 院 系 电子信息工程学院 专 业 电子信息工程 班 级 1 姓 名 孙黄超 学号:1208421071word.摘摘 要要温度采集广泛应用于人民的生产和生活中,使用温度计来采集温度,这样不仅采集精度低、实时性差,而且操作人员的劳动强度大。为了解决这一问题,本文介绍了一种采用集成温度传感器 DS18B20 作为检测元件,AT89C51 作为 CPU 的温度监控系统。利用数字温度传感器 DS18B20 与 AT89C51 单片机结合来测量温度,利用相应的显示器显示温度值。利用仿真工具 Proteus 进行单片机应用系统的虚拟设计与仿真调试
2、。在 Keil Vision3 开发环境下进行 C51 语言程序开发。本课题主要有键盘输入模块、传感器采集模块、显示模块、报警模块、CPU 处理模块、电源供电及复位模块组成。本文介绍了该温度采集报警系统的硬件和软件设计。关键字:数据采集、传感器、AT89S51 单片机、仿真调试word.目目 录录摘 要.I目 录 .II1 引言.11.1 研究背景及意义.11.2 国内外研究现状.12 温度采集报警系统原理说明. 13 硬件设计.33.1 总体方案设计.33.2 主要模块设计.3 3.2.1 晶振电路.3 3.2.2 复位电路.4 3.2.3 按键操作电路.4 3.2.4 显示电路.5 3.2
3、.5 报警电路.5 3.2.6 温度传感器选择. .5 3.2.7 实现温度采集报警系统的整体流程图.6 4 软件设计.74.1 温度采集传感系统的任务.74.2 Proteus 的界面实现.74.3 在 KeilVision4 平台下进行编程.85 系统调试与实验.96 总结.117 参考文献.128 附录.13word.1 引言1.1 研究背景及意义 随着社会和经济的开展,城市的消防工作越来越重要,火灾自动报警系统在消防工作中的作用就越突出,我国的火灾报警系统历经了从无到有,从简单到复杂的开展过程,其中智能化程度越来越高,但是由于人为的因素导致发生火灾的消息不能及时向有关方面报告,没有及时
4、的处理火灾事故,这导致了更多的经济财产损失。而火灾自动报警系统的实现及全方面的应用就是为了减少损失的发生率。温度采集报警系统的设计及研究应用,对于以后消防工作的进行有十分重大的意义。因此,采用单片机实现温度控制系统的研究越来越普遍,而单片机温度控制系统中的传感器的应用,简化了信息采集的设计,从而减小了设计的复杂性,增加系统的可靠性,也同时减小了在实际开发中 PCB 板的面积,节约了本钱。报警和显示模块主要是驱动蜂鸣器实现报警功能和便于实时观察。该系统充分表达了智能化、低功耗、高精度的开展趋势。重点在于传感器的设计及智能化、低功耗的硬件电路设计上。1.2 国内外研究现状由于火灾系统需要不断完善,
5、因此,目前各个国家对于温度采集报警系统十分的重视。重视的角度虽热不同,但最终的目的就是提高温度采集报警系统的灵敏度,使之应用于各大消防隐患场所。在现代社会不断开展的时代进程中,起初的消防设施不能广泛应用于各个大型场所。因此才不断追求灵敏度高、规模小型化、高可靠性、技术智能化的系统。网络化、智能化、多样化、小型化、社区化是目前各个国家需要攻克的研究课题。为此,研究力度仍需不断加大。2 温度采集报警系统原理说明由于采用温度传感器DS18B20与AT89S51单片机相结合的测温方式,因此要对两者有一个简单的了解,下面就其根本性能做下说明。DS18B20温度传感器是美国DALLAS半导体公司最新推出的
6、一种改良型的具有单总线接口的智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字读数方式。DS18B20的性能如下。1单总线接口,仅需要一个引脚与单片机进行通信。2多个DS18B20均可挂在单总线上,实现多点测温功能。3可通过数据线供电,电压范围为3.0V5.5V。4温度以9或12位的数字读数方式。5用户可定义报警设置。6报警搜索命令识别并标志超过程序限定温度温度报警条件的器件。7负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。word.8DS18B20采用3引脚PR-35封装或8引脚SOIC封装。AT89
7、S51单片机的片内硬件组成结构如图1所示。它把那些作为控制应用所必需的根本外围部件都集成在一个集成电路芯片上。它具有如下外围部件及特性:18位微处理器CPU;2数据存储器128B RAM;3程序存储器4KB Flash ROM;44个8位可编程并行I/O口P0口、P1口、P2口、P3口;51个全双工的异步串行口;62个可编程的16位定时器/计数器;图1 AT89S51单片机片内结构71个看门狗定时器;8中断系统具有5个中断源、5个中断向量;9特殊功能存放器SFR26个;10低功耗模式有空闲模式和掉电模式,且具有掉电模式 下的中断恢复模式;113个程序加密锁定位; 与AT89C51比,AT89S
8、51更突出的优点:1增加在线可编程功能ISPIn System Program,字节和页编程,现场程序调试和修改更加方便灵活;2数据指针增加到两个,方便了对片外RAM的访问过程;3增加了看门狗定时器,提高了系统的抗干扰能力;4增加断电标志;word.5增加掉电状态下的中断恢复模式;片内的各功能部件通过片内单一总线连接而成见图1,根本结构依旧是CPU 加上外围芯片的传统微机结构。CPU对各种功能部件的控制是采用特殊功能存放器SFR,Special Function Register的集中控制方式。单片机通过模拟口采集得到的传感器输出的电压,通过设置的参数电压就可以得到传感器的输入电压,再通过温度
9、与电压转换等式就可以得到温度参数,将得到的温度参数进行分析后进行相应的处理,显示温度数据或者是驱动蜂鸣器报警,AT89S51芯片内集成了A/D转换通道,这样就可以直接将单片机的A/D输入通道与传感器的模拟电压输出通道相连接,系统可以通过键盘来完成对报警温度的上限和下限的设置,再通过显示电路将数据显示出来,当温度超过所设置的最大温度或最小温度时,系统通过驱动蜂鸣器进行报警。因此采用AT89S51芯片与温度传感器DS18B20相结合的方式实现温度报警系统的研究。3 硬件设计3.1 总体方案设计温度采集报警系统主要由电源电路、复位电路、键盘、温度采集电路、显示电路、报警电路、CPU处理AT89S51
10、等组成,整个系统的原理框图如图2所示。CPU 处理AT89S51电源电路 复位电路键 盘 温度采集电路报警电路显示电路图 2:系统电路的总体设计框图3.2 主要模块设计 3.2.1 晶振电路瓷片电容C1、C2是用来驱动晶振Y1的,因为晶振的大小是16M,所以选用30pF的电容,如下列图3所示。word.图 3 晶振电路 3.2.2 复位电路 复位电路选用了30pF的电解电容和1K的电阻,如下列图4所示。 图4 复位电路 3.2.3 按键操作电路电路图如下列图5所示: 图5 按键操作电路按键SET用来进行温度值的设置;BACK键用于返回上一层次的步骤;INC键用于调整word.数字的值,每按一次
11、加一,数值加一;MOVE键用于显示屏上光标的移动。 3.2.4 显示电路显示采用16*4字符LCD,如下列图6所示: 图6 显示电路 3.2.5 报警电路采用蜂鸣器出声、发光二极管闪烁的方式进行报警。如下列图7所示: 图7 报警电路三极管 NPN 采用 9013 是作为蜂鸣器的驱动的作用的,R7、R8 作为限流电阻使用。 3.2.6 温度传感器选择 采用数字温度传感器 DS18B20。DS18B20 为数字式温度传感器,无需其他外加电路,直接输出数字量。可直接与单片机通信,读取测温数据,电路简单。DS18B20 能够直接读出被测温度并且可根据实际要求通过简单的编程实现 912 位的word.数
12、字值读数方式。并且从 DS18B20 读出的信息或写入 DS18B20 的信息仅需要一根口线单线接口读写,因而使用 DS18B20 可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面带来了令人满意的效果。基于现有器件所限,温度采集模块采用 DS18B20 温度传感器效果更好。 3.2.7 实现温度采集报警系统的整体流程图 图8 温度采集报警系统整体流程图 word.4 软件设计在本设计系统中,要求到达的目的是在温度数值低于或超过设定的平安数值的情况下,系统自动报警的目的。要实现现实社会中温度异常检测与报警预警之间的联系转换,就需要温度采集报警系统的全面应用。温度采
13、集报警系统的主要功能是实现微妙的温度伤害差距对于生产生活影响的减弱,通过单片机等设施及时的通告给人类,以便于我们采取有利的措施。总之,该系统对于我们的生产生活有很大的影响。4.1 温度采集传感系统的任务 温度采集传感系统的任务就是运用温度传感器将超出或低于设定温度的温度状态报告给上一级,通过单片机的 CPU 处理系统,实现即时的报警预警,以减少国家及人民的财产平安。4.2 Proteus 的界面实现下列图 9 为其根本界面: 图 9 Proteus 界面翻开 Proteus 软件,将图中标号为 P 的小格选中,将会出现一个如下列图 10 的界面。在界面中的 Keywords 中输入要找的元器件
14、,然后点击 OK 就会出现在图 9 中的界面中,按照此方法找到我们所需要的所有器件,之后在开始的界面中绘制所需原理图。绘制好之后,将在 Keil Vision4 中生成的.hex 文件导入到绘制好的原理图中。最后,进行调试与检测。word. 图 10 元件快速查找界面 4.3 在 Keil Vision4 平台下进行编程如图 11 为 Keil Vision4 运行界面。在编写一个新的应用程序前,一定先要建立工程。下面首先介绍如何建立一个新的工程。word.在编辑界面下,首先要建立一个点击“Project菜单,选择下拉式菜单中的“New Project,弹出文件对话窗口,选择要保存的路径,在“
15、文件名中输入一个程序工程名称,保存后的文件扩展名为“.uv2,这是 Keil Vision4 工程文件的扩展名,以后可直接点击此文件就可翻开先前做的工程。点击“保存后,这是会弹出一个对话框,要求选择单片机的型号,用户可根据所使用的单片机来选择。Keil Vision4 支持几乎所有的 51 内核单片机。 然后编写第一个程序。点击“File菜单,单击“New 。这时,用户可输入代码。输入完毕,单击菜单上的“File,在下拉菜单中单击“Save As,在“文件名栏的编辑框中,键入文件名,同时,必须键入正确的扩展名.C 或.ASM),然后,单击“保存按钮。上述工作完成后,还有有关工程的设置,程序的编
16、译,链接,调试。这些内容,可按照 Keil Vision4 开发环境的帮助功能。 5 系统调试与实验本设计完成了一个温度采集报警系统,系统的硬件组成主要有:计算机,USB 转串口,STC12 系列单片机,驱动电路,传感器等。本次系统的调试程序采用的是 C 语言进行编程的,经屡次的实验以及调试,最终结果还是较好的,下列图 12 为本次系统实验研究原理图。 图 12 系统原理图word.通过改变温度,研究温度采集报警系统的情况如下:图 1316 图 13 温度超过设定平安温度,灯闪烁蜂鸣器鸣响 图 14 温度恰在设定临界处,灯不闪蜂鸣器不响 图 15 温度低于设定平安温度,灯闪烁蜂鸣器鸣响 图 1
17、6 温度处于设定平安温度之间,灯不闪蜂鸣器不响由以上调试分析,验证该温度采集报警系统符合设计要求。word.6 总结这次的课程设计是我自己第一次设计的一个系统,前期的方案选取与材料的查找,原理图的绘制及调试,程序的编写和 Proteus 仿真等等,使我对之前的理论知识有了较好的稳固,同时也提高了自己的动手能力与实际学习能力,但是在学习中我也发现自己在理论知识方面存在很多缺乏,比方说,对单片机的中断控制系统的掌握还不够,和对LCD 的菜单界面编程能力缺乏。所以在今后,我将更加努力地学习,提高自己的专业水平和课程设计的能力,为以后更好的做相关的工作而积累经验。word.7 参考文献1 袁昌立. 基
18、于网络架构的智能火灾报警系统设计.微计算机信息,2007,1-1: 215-216.2 楼然苗,李光飞. 51 系列单片机设计实例M.北京航空航天大学版社.3 孙焕铭,赵成会,王金.51 单片机 C 程序应用实例详解M.北京:北京航空航天大学出版社,2022.4 胡汉才,单片机原理及其接口技术M.北京:清华大学出版社,1996.5 赵建领,弓雷.51 系列单片机开发宝典 2 版M.北京:电子工业出版社,2012.6 李勇.一个多串口多线程数据采集系统软件的设计与实现.微计算机.word.8 附录主程序:#include#include#define uchar unsigned char#de
19、fine uint unsigned int#define IO P0sbit RS=P20;sbit RW=P21;sbit E=P22;void check_busy(void);void write_cmd(uchar com);void write_data(uchar dat);void LCD_init(void);void write_str(uchar x ,uchar y,uchar *s);void lcd_test(void);void delay(uint); /1ms 延时程序void delay(uint j)uchar i;for(;j0;j-) for(i=0;
20、i0;i-) DQ = 0; / 给脉冲信号 dat=1; DQ = 1; / 给脉冲信号 if(DQ) dat|=0 x80; delay_18B20(4); return(dat);/*ds18b20 写一个字节*/ void WriteOneChar(uchar dat) unsigned char i=0; for (i=8; i0; i-) DQ = 0; DQ = dat&0 x01; delay_18B20(5); DQ = 1; dat=1; word./*读取 ds18b20 当前温度*/void ReadTemp(void)unsigned char a=0;unsigne
21、d char b=0;unsigned char t=0;Init_DS18B20();WriteOneChar(0 xCC); / 跳过读序号列号的操作WriteOneChar(0 x44); / 启动温度转换delay_18B20(100); / this message is wery importantInit_DS18B20();WriteOneChar(0 xCC); /跳过读序号列号的操作WriteOneChar(0 xBE); /读取温度存放器等共可读 9 个存放器 前两个就是温度delay_18B20(100);a=ReadOneChar(); /读取温度值低位b=ReadO
22、neChar(); /读取温度值高位temp_value=b4; /温度整数局部 temp_dot=a&0 x0f; /温度小数局部 void temp_to_1602() /温度数据转换成液晶字符显示 ReadTemp(); Temp0=temp_value/10+0; /十位 Temp1=temp_value%10+0; /个位 Temp2=.; Temp3=temp_dot*0.625+0; Temp4=0 xdf; Temp5=0;#endifword.sbit KEY_SET=P10;sbit KEY_BACK=P11;sbit KEY_INC= P12;sbit KEY_MOVE=
23、P13;sbit ALART=P14;sbit SHK=P15;bit SET_FLAG =0; /SET flag,when flag 1 is on SET modebit OVER_FLAG=0;uchar;CURRENT_MENU=0;uchar code MESSAGE24=NO ,YES;uchar code MENU1=* Welcome *;uchar code MENU2=* SET MODER *;uchar code MENU3220=* Set sucess! *,You set is illeage;uchar code WARING=WARING:;uchar co
24、de TEM=TEMP:;uchar code SET=-SET;uchar code BACK=-BACK;uchar code HIGHS=HIGHT:;uchar code LOWS = LOW :;uchar HIGHT=40,LOW=10;uchar move,base;uchar dis_temp6;bit MENU_FLAG3;void delay_100us(uchar x) uchar y; while(x-) for(y=0;y100;y+); void buzzer() ALART=0; delay_100us(4);word. ALART=1; delay_100us(
25、4);void light() uchar i; for(i=0;i20;i+) buzzer(); SHK=0; for(i=0;i20;i+) buzzer(); SHK=1; void disslove() dis_temp0=HIGHT/100; dis_temp1=HIGHT/10%10; dis_temp2=HIGHT%10; dis_temp3=LOW/100; dis_temp4=LOW/10%10; dis_temp5=LOW%10;void assemble() HIGHT=dis_temp0*100+dis_temp1*10+dis_temp2; LOW=dis_temp
26、3*100+dis_temp4*10+dis_temp5;void key_scan() uchar tem,adjust; if(KEY_BACK=0) word. delay_100us(140); if(KEY_BACK=0) LCD_init(); move=0; if(CURRENT_MENU!=0) CURRENT_MENU-=1; if(CURRENT_MENU=2) SET_FLAG=1; else SET_FLAG=0; while(!KEY_BACK); if(KEY_SET=0) delay_100us(140); if(KEY_SET=0) LCD_init();SET_FLAG=0;move=0;if(C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论