基于单片机的寝室温湿度检测系统的设计.docx
《基于单片机的寝室温湿度检测系统的设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的寝室温湿度检测系统的设计.docx(36页珍藏版)》请在冰点文库上搜索。
基于单片机的寝室温湿度检测系统的设计
电气工程课程设计报告
题目:
寝室温湿度检测装置的设计
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
注意事项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
指导教师评阅书
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
□优□良□中□及格□不及格
3、学生综合运用所学知识和专业技能分析和解决问题的能力
□优□良□中□及格□不及格
4、研究方法的科学性;技术线路的可行性;设计方案的合理性
□优□良□中□及格□不及格
5、完成毕业论文(设计)期间的出勤情况
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
二、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
评阅教师:
(签名)单位:
(盖章)
年月日
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
□优□良□中□及格□不及格
2、对答辩问题的反应、理解、表达情况
□优□良□中□及格□不及格
3、学生答辩过程中的精神状态
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
评定成绩:
□优□良□中□及格□不及格
教研室主任(或答辩小组组长):
(签名)
年月日
教学系意见:
系主任:
(签名)
年月日
摘要
随着人们生活水平的提高,人们对健康提出了更高的要求,空气中的湿度通过各种直接或间接途径影响了我们的舒适感,空气中的湿度过大或过小都会对人体健康不利。
在日常生活中,温湿度监控系统应用很广泛,例如:
机房、档案馆、材料加工场等场所,乃至我们的寝室,温湿度与健康密切关联,都必须控制环境的温度和相对湿度,使其保持在一定的范围。
使用DHT11可以灵活的检测环境的温湿度,由用户设定一定的阈值,实时监测显示,并且可以根据用户要求设定报警装置,当温湿度超过一定的范围时,立即报警。
基于此,我设计了一款用51单片机控制的温湿度监控系统,操作简单,使用方便。
关键词:
温湿度;51单片机;DHDT11
第1章绪论
1.1本论文的背景和意义
室内温湿监控系统的设计是一个对现实生活非常实用,本课题研究的主要内容是设计制作对室内温湿度的监督与控制,相当于简易空调的制作,了解空调系统,运用原理设计制作方案;运用物理知识制作控制温湿变化设备;传感器获取外界温湿度参数,51单片机编程控制,实现智能化设计;并用仿真软件对控制效果进行仿真研究。
随着科技的飞速发展和普及,高性能设备越来越多,各行各业对温湿度的要求也越来越高。
传统的温湿度监测模式是以人为基础,依靠人工轮流值班,人工巡回查看等方式来测量和记录环境状况信息。
在这种模式下,不仅效率低下不利于人才资源的充分利用,而且缺乏科学性,许多重大事故都是由人为因素造成的,人工维护缺乏完整的管理系统。
而问世监控系统就可以解决这样人才资源浪费,管理不及时的问题,这是由于它的智能化设计所决定的。
它的工作步骤如下:
感应环境温湿度;单片机判断感应到的温湿度是否异常;若感应到的温湿度异常,实行措施进行调节;判断异常是否超过预设时间,若超过预设时间,则输出异常信号报警;判断异常是否处理完毕,若处理完毕,解除报警。
这样就可以利用控制器对机房温湿度进行监控,从而实现环境温湿度管理的实时性和有效性。
故本次设计对于类似项目还具有普遍意义。
1.2本论文的基本内容
本设计完成的是温室的温湿度监测系统,利用单片机设一个温湿度检测系统,对给定的温湿度进行测试并实时显示,并怕不断当时的温度或湿度是否在规定的范围内,若不是,测启动报警系统。
1.3方案设计
1.3.1温湿度监控系统满足的基本要求
a.温度检测范围0-50度,相对湿度20%-90%;
b.可以根据实际用途设定温湿度报警值;
c.监测数据可以通过模块显示;
1.3.2系统功能原理图
根据设计要求确定了系统的总体方案,整个方案由单片机、湿温度传感器、显示模块、报警器等五部分组成。
系统功能原理图如图1所示。
图1-1系统功能原理图
第2章硬件设计
2.1电路原理图
单片机是整个系统的控制中枢,它指挥外围器件协调工作,从而完成特定功能。
硬件实现上采用模块化设计,每个模块只实现一个功能,最好将各个模块连接在一起。
这种设计比较简单的就可以实现,电路原理图如图2-1所示:
图2-1电路原理图
2.2电路原理图介绍
本系统主要硬件有电源电路、温湿度传感器、蜂鸣器、晶振电路、复位电路、LCD显示电路、且控制电路的核心器件是由STC红晶科技公司生产的STC11F04E单片机,属于MCS-51列,STC11F04E是一种低功耗、高性能的CMOS8位微控制器,具有8K在系统可编程FLASH存储器;相比传统的51系列速度更快,且在本设计中充分利用了该单片机的资源不浪费I/O口。
片上Flash允许程序存储器在线编程。
这些优点使得STC11F04E为众多嵌入式控制应用系统提供高灵活、超有效的解决方案,价格低廉,性能可靠,抗干扰强,因此广泛应用在工业控制和嵌入式中。
系统的蜂鸣器电路、晶振电路、复位电路如图2-1、图2-2、图2-3所示:
图2-2蜂鸣器电路图2-3晶振电路图2-4复位电路
2.3蜂鸣器电路部分说明
蜂鸣器额定电流小于30mA,其中使用三极管驱动工作,为了减少功耗本实验采用9012晶体管。
2.4晶振电路部分说明
晶振电路采用11.095MHz的无源晶振,微调电容大小取30PF。
2.51602模块电路说明
显示模块选用1602字符型液晶模块,是目前应用比较广泛的液晶屏之一,电路如图2-5所示。
图2-51602液晶显示电路
2.6湿度传感器DHT11介绍
DHT11数字温湿度传感器是一款含有已校准熟悉信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
每个DHT11传感器都在即为精确的湿度校验室中进行校准。
校准系数以程序的形式存在OTP内存中,传感器内部在检测型号的处理过程中要调用这些校准系数。
单线制串行接口,使系统集成变得简易快捷。
超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为给类应用甚至最为苛刻的应用场合的最佳选择。
产品为4针单排引脚封装,连接方便。
DHT11应用电路如图2-6:
图2-6DHT11应用电路
2.7技术参数说明
a.供电电压:
3.3~5.5VDC;
b.输出:
单总线数字信号;
c.测量范围:
湿度20-90%RH,温度0~50℃;
d.测量精度:
湿度+-5%RH,温度+-2℃;
e.分辨率:
湿度1%RH,温度1℃;
f.互换性:
可完全互换;
g.长期稳定性:
<±1%RH/年;
第3章软件设计
3.1软件设置实现的功能
系统单片机代码采用C语言编写,以KeiuVision4为开发环境。
系统软件实现的功能:
a.通过LCD显示温湿度值;
b.比较检测到的温湿度值和报警值,发现超限蜂鸣器立即报警;
3.2软件流程图
根据这些功能,系统软件流程图如图3-1所示:
Y
N
图3-1系统软件流程图
第4章实验板测试
通过测试实验板,已基本达到预定目的,测评如下:
1.预先设置温度阈值是30摄氏度,湿度阈值是30%TH;
2.温度测试:
通电后,温度显示室内值,用手捂住DHT11,使显示器达到30,此时蜂鸣器立即报警;
3.湿度测试:
紧接着温度测试,用嘴吹气增加DHT11的湿度,使其达到阈值30,蜂鸣器立即报警;
通过测试,实验板基本完成预定的目标,即完成了温湿度的检测,且能在设定的阈值范围内报警,达到了预期的效果。
结论
由于采用的是高效单片机作为核心,DHT11可以灵活的检测环境的温湿度,由用户设定一定的阈值,实时监测显示;此温湿度控制仪具有精度高、成本低、体积小、接口简单等优点,还具有良好抗干扰能力。
加上优化程序,使得本系统具有很高的实用性。
单片机的应用如今已经在工业、电子等方方面面展示出了它的优越性,利用单片机在设计电路逐渐成了趋势,它与外围的简单电路再加上优化程序就可以构建任意的产品,使得本设计成为现实。
随着单片机的日益发展,它必将在未来显示出更大的活力,为电子设计增加更多精彩。
在设计过程中,由于时间和本人能力的限制,设计中存在一些需要改进和优化的地方。
测量精度有待进一步提高,软件设计也存在不合理之处。
但从设计过程中,对于单片机有更进一步的认识,对用于单片机仿真的软件操作能力也明显提高,也对温湿度检测系统有了更深刻的理解,对protel99se和Altiumdesigner仿真软件有了更明确的认识,通过此设计,对在实验板在制作过程中出现的各种问题的解答提高了自己的思考能力和动力能力。
端正了做事的心态,不能有半点马虎,细节决定成败,做事应该滴水不漏,认认真真,踏踏实实,对以后的日常生活和工作都受益匪浅。
参考文献
[1]谢自美.电子线路设计*实验*测试[M].华中科技大学出版社.
[2]张友德等.单片微型机原理、应用和实验[M].电子工业出版社.
[3]吴经国等.单片机应用技术[M].中国电力出版社.
[4]李群芳.单片机微型计算机与接口技术[M].电子工业出版社.
[5]闫石.数字电子技术基础[M].高等教育出版社.
[6]黄智伟.全国大学生电子设计竞赛训练教程[M].电子工业出版社.
[7]周立功.单片机实验与实践[M].北京航空航天大学出版社.
[8]XUYi-min.TheDesignforSteppingMotorofSCMControlSystem[J].HeilongjiangScienceandTechnologyInstitute.2005.1
附录
附录1
程序源代码
/*******************************************************************************/
//DHT11温湿度测试程序
//P0作为LCD的数据控制口,P2.0作为DHT11data总线,P2.1作为状态显示
//用三根杜邦线连到开发板
/********************************************************************************/
#include
#include
typedefunsignedcharunint8;
typedefunsignedcharunint16;
unsignedcharstr1[]={""};
unsignedcharstr2[]={""};
unsignedcharcodedis1[]={"2-#H:
"};
unsignedcharcodedis2[]={"618T:
"};
sbitTRH=P3^7;//温湿度传感器DHT11数据接入
sbitST=P3^1;//状态显示,是为了方便调试,具体使用的时候可以不要
sbitSF=P3^2;
sbitLCD_RS=P3^3;
sbitLCD_RW=P3^4;
sbitLCD_EN=P3^5;
unint8TH_data,TL_data,RH_data,RL_data,CK_data;
unint8TH_temp,TL_temp,RH_temp,RL_temp,CK_temp;
unint8com_data,untemp,temp;
unint8respond;
/*********************************************************************************/
voiddelayNOP()
{
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
_NOP_();
}
/*********************************************************************************/
/*********************************************************************************/
//毫秒级延时子程序
/*********************************************************************************/
voiddelay_ms(unsignedcharms)
{
unsignedchari;
while(ms--)
{
for(i=0;i<150;i++)
{
_NOP_();
_NOP_();
_NOP_();
_NOP_();_NOP_();
_NOP_();
_NOP_();
_NOP_();
}
}
}
/*********************************************************************************/
/*********************************************************************************/
//5us级延时程序
/*********************************************************************************/
voiddelay_us()
{
unint8i;
i--;
i--;
i--;
i--;
i--;
i--;
}
/********************************************************************************/
/********************************************************************************/
//测试LCD忙碌状态
//lcd_busy()为1时,忙,等待。
lcd_busy()为0时,闲,可写指令与数据。
/********************************************************************************/
bitlcd_busy()
{
bitresult;
LCD_RS=0;
LCD_RW=1;
LCD_EN=1;
delayNOP();
result=(bit)(P1&0x80);
LCD_EN=0;
return(result);
}
/*******************************************************************************/
/*******************************************************************************/
//写入指令数据到LCD
/*******************************************************************************/
voidlcd_wcmd(unsignedcharcmd)
{
while(lcd_busy());
LCD_RS=0;
LCD_RW=0;
LCD_EN=0;
_NOP_();
_NOP_();
P1=cmd;
delayNOP();
LCD_EN=1;
delayNOP();
LCD_EN=0;
}
/*****************************************************************************/
/*****************************************************************************/
//写显示数据到LCD
//RS=高电平,RW=低电平,E=高脉冲,D0-D7=数据。
/*****************************************************************************/
voidlcd_wdata(unsignedchardat)
{
while(lcd_busy());
LCD_RS=1;
LCD_RW=0;
LCD_EN=0;
P1=dat;
delayNOP();
LCD_EN=1;
delayNOP();
LCD_EN=0;
}
/***********