更新时间:08-08 编辑老师:佚名
摘要:温湿度检测系统主要由温湿度传感器DHT11,STC89C52单片机和发光二极管显示三部分组成,通过单片机对温湿度传感器的检测和控制,从而对温度和湿度的监测控制,采用软件编程,使其达到指定温湿度时候点亮二极管。整个检测状态稳定,使用方便,直观性强,操作简单,便于携带。适合解决生活中的温湿度测量。
关键词:单片机; 传感器; 温湿度
1.序言
1.1选题背景
在日常生活中,环境的温湿度很重要,比如在种植蔬菜的大棚中,就需要有准确的温湿度,它直接影响到储备物资的使用寿命和工作可靠性,传统的方法是用湿度表,湿度纸等,通过人工检测。这种方法费时费力,效率低,测试误差大。因此我们需要一种简单,快捷的温湿度检测仪。
1.2设计目的
体积小,便于携带,使用一定要方便。这次设计这个便携式的温湿度检测板就是为了随时掌控我们周围的温度与湿度,在温湿度脱离正常范围时发出警告。
1.3开发工具
Protel DXP 2004:Protel DXP 2004已不是单纯的PCB(印制电路板)设计工具,而是由多个模块组成的系统工具,分别是SCH(原理图)设计、SCH(原理图)仿真、PCB(印制电路板)设计、Auto Router(自动布线器)和FPGA设计等,覆盖了以PCB为核心的整个物理设计。该软件将项目管理方式、原理图和PCB图的双向同步技术、多通道设计、拓朴自动布线以及电路仿真等技术结合在一起,为电路设计提供了强大的支持。
Keil uVision2:是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统c语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期, 他还能嵌入汇编,可以在关键的位置嵌入,使程序达到接近于汇编的工作效率。
2.硬件开发
2.1硬件功能总介
图1.结构框图
该系统主要由STC89C52单片机系统,温湿度采样电路,发光二极管显示,程序烧录等四部分构成。
2.2各部分结构功能
图2 数据接收电路和晶振电路
采用数字温湿度传感器DHT11检测温湿度。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。图中R1为上拉电阻。Y1,C1,C2组成晶振电路,产生固定的频率振荡。
图3 串口电路
这是串口部分,PC机的串口是RS232电平,所以采用芯片MAX232进行转换。
图4 显示电路
采用两个发光二极管来显示温湿度,当单片机从DHT11传感器采集到温湿度后,通过程序的设定,到超过指定的温湿度后会点亮LED灯
图5 电源电路
这是电源部分,采用USB供电。
2.3硬件各部分功能的详细介绍
CPU:STC89C52RC
指令代码完全兼容传统8051单片机,工作电压5.5V-3.3V,内部集成专用复位电路,外部晶体20M以下时,可省外部复位电路。
图6 单片机管脚图
传感器:采用了DHT11数字温湿度传感器。
图7 DHT11传感器
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。
串口模块:
51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如电脑的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。我们采用了三线制连接串口,也就是说和电脑的9针串口只连接其中的3根线:第5脚的GND、第2脚的RXD、第3脚的TXD。这是最简单的连接方法,但是对我们来说已经足够使用了,电路如下图所示,MAX232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接。
3.软件开发
3.1软件功能总介
本系统的软件设计采用C语言编写,主要通过单片机采样模块读入端口温湿度信号,并转换成实际温湿度数值,并与设定的数值比较,最后通过发光二极管显示。
插上USB供电以后,传感器就不停检测温度湿度。温度到达25摄氏度点亮LED,湿度到达40%点亮LED
本系统的最大特点是测量准确,结构简单,调试使用方便,性价比高。
4.调试测试
4.1介绍调试测试的方法
程序调试主要有两种方法,即静态调试和动态调试。程序的静态调试就是在程序编写完以后,由人工“代替”“模拟”计算机,对程序进行仔细检查,主要检查程序中的语法规则和逻辑结构的正确性。实践表明,有很大一部分错误可以通过静态检查来发现。通过静态调试,可以大大缩短上机调试的时间,提高上机的效率。程序的动态调试就是实际上机调试,它贯穿在编译、连接和运行的整个过程中。根据程序编译、连接和运行时计算机给出的错误信息进行程序调试,这是程序调试中最常用的方法,也是最初步的动态调试。在此基础上,通过“分段隔离”、“设置断点”、“跟踪打印”进行程序的调试。实践表明,对于查找某些类型的错误来说,静态调试比动态调试更有效,对于其他类型的错误来说刚好相反。因此静态调试和动态调试是互相补充、相辅相成的,缺少其中任何一种方法都会使查找错误的效率降低。
4.2总结调试测试的结果
当程序和硬件都弄完的时候,就插上数据线下载程序了,下载完毕后,当用手指按住传感器时,温度的LED还是没有反映,当时就想到程序出现问题了,可是自己没法检查出来,毕竟自己还是个新手,没有什么调试程序的经验。后来在同学及老师的帮助指导下。把程序修改正确后,终于成功了。基本上是修改一次程序,测试一次。一共来来回回了很多次。
结果基本测试出来。调试完成,发光二极管到达条件也都亮了。
5.总结
这次毕业设计总得来说还是很顺利,就是在程序这块耽误的时间比较多,花的时间也比较长,但是还是很开心。
2010年11月,我开始了我的毕业论文工作,时至今日,论文基本完成。从最初的茫然,到慢慢的进入状态,再到对思路逐渐的清晰,整个写作过程比较漫长。
历经了几个月的奋战,毕业设计终于快结束了。在搜集资料的过程中基本实在在网上查找各类相关资料。 在大家的帮助下,困难一个一个解决掉,论文也慢慢成型。
在设计电路初期,由于没有设计经验,觉得无从下手,空有很多设计思想,却不知道应该选哪个,经过导师的指导,我的设计渐渐有了头绪,通过查阅资料,逐渐确立系统方案。
脚踏实地,认真严谨,实事求是的学习态度,不怕困难、坚持不懈、吃苦耐劳的精神是我在这次设计中最大的收益。我想这是一次意志的磨练,是对我实际能力的一次提升,也会对我未来的学习和工作有很大的帮助。
5.1开发过程中遇到的问题及解决方案
在这制作动手期间遇到了很多问题,一开始焊接的时候就有麻烦,贴片的比较难焊接,特别是那块CPU芯片,我用镊子费了很大劲才焊好。原理图的制作也是改了好多次。当焊接完成的时候插上USB口时连电源灯都不亮,后来经过检查才发现是接口焊接错误。淡然最麻烦的要算是程序编写和调试了。这部分本来就不是很精通,程序写了也调试不出来。最后通过朋友的帮助,不断修改才完善了。
5.2改进意见
题目是便携式检测。我做的时候就用的USB供电,最好再加个便携式电源就好了。这样的话就能随时随地检测了。