基于DHT11的温湿度监测电路设计_第1页
基于DHT11的温湿度监测电路设计_第2页
基于DHT11的温湿度监测电路设计_第3页
基于DHT11的温湿度监测电路设计_第4页
基于DHT11的温湿度监测电路设计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题目:基于DHT11的温湿度监测电路设计 基于DHT11的温湿度监测电路设计摘 要本次设计是采用MSC-51系列单片机中的AT89S51和DHT11构成的低成本的温湿度的检测控制系统。单片机AT89S51是一款低消耗、高性能的CMOS8位单片机,由于它强大的功能和低价位,因此在很多领域得到广泛应用。DHT11温湿度传感器是一款含有已校准数字输出的温湿度复合传感器,传感器包括一个电阻式感湿原件和一个NTC测温元件,该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。设计主要包括硬件电路的设计和系统软件的设计。硬件电路主要包括单片机、温湿度传感器、显示模块、报警器以及控制设备等五部分。其中由DHT11温湿度传感器及LCD1602字符型液晶模块构成系统显示模块;测温湿度控制电路由温湿度传感器和预设温度值比较报警电路组成;用户根据需要预先输入预设值,当实际测量的温湿度不符合预设的温湿度标准时,发出报警信号(蜂鸣器蜂鸣)。软件部分包括了主程序、显示子程序、测温湿度子程序。 关键词:AT89S51;DHT11;温湿度监测 DHT11 Temperature and Humidity monitoring circuit designABSTRACTAT89S51 is a low consumption, high performance CMOS8 bit microcontroller.Because of its powerful features and low price, it is used in many areas.DHT11 temperature and humidity sensor is a temperature and humidity combined sensor containing a calibrated digital output, the sensor consists of a resistor in the original sense of wet and a NTC temperature measurement devices.The product has many advantages, such as excellent quality, fast response, strong anti-jamming capability . This design is fromed by the AT89S51 in MSC-51 Series and DHT11 constitute which is a low-cost temperature and humidity measurement and control system. The design includes the design of hardware circuit design and system software. The hardware has Five modules.They are a microcontroller, temperature and humidity sensors, display module, alarm and control equipment. The LCD1602-character LCD module constitute the system display module.The temperature and humidity control circuit by the temperature and humidity sensors and preset temperature alarm circuit.According to the need of pre-enter the default value, when the actual measurement of the temperature humidity does not conform the preset temperature and humidity standards, send the alarm signal (buzzer will beep).The software part includes the main program, the display routines, temperature and humidity subroutine.Key words: AT89S51 ;DHT11 ;Temperature and humidity monitoring. 目 录1 前 言11.1 本文研究的背景及意义11.2 研究任务和主要内容11.2.1 本系统要完成任务11.2.2 主要内容12 设计任务要求分析22.1 设计要求22.2 系统组成22.3 本章小结23 硬件设计33.1 单片机模块设计33.1.1 AT89S51单片机33.1.2 单片机最小系统43.1.3 复位电路43.1.4 时钟电路53.1.5 温湿度设置(按键)电路63.2 显示电路63.3 传感器电路83.4 电源指示灯电路103.5 系统的蜂鸣器电路103.6 本章小结114 软件设计124.1 温湿度采集模块144.2 显示模块154.3 蜂鸣器报警模块154.4 PROTUES运行结果164.5 本章小结17结论18参考文献19致谢201 前言1.1 本文研究的背景及意义在日常生活中,温湿度监控系统应用很广泛,例如:机房、档案馆、材料加工场等场所,都必须严格控制环境的温度和相对湿度,使其保持在一定的范围。使用DHT11可以灵活的监测环境的温湿度,由用户设定一定的阈值,实时监测显示,并且可以根据用户要求设定报警装置,当温湿度超过一定的范围时,立即报警。基于此,我设计了一款用51单片机控制的温湿度监控系统,操作简单,使用方便。1.2 研究任务及主要内容1.2.1 本系统要完成的任务(1)人性化的设计。界限温度值及湿度值能够由用户根据不同地域和不同的需求输入并通过显示器显示,能够实时、准确的显示采样温度值与湿度值。(2)通过采集温度及湿度值,准确的判断标准值与当前值之间的差异,看是否符合标准值,及时的启动报警装置(包括警报灯的提示功能以及蜂鸣等)进行报警,并采取相应控制温湿度的方案。1.2.2 主要内容(1)温湿度的监测我们研究的主要内容。数字化传感器将采集到的信号送入单片机,之后单片机通过显示模块显示该温湿度值。(2)该系统通过按钮设定最适宜的温度和湿度,传感器向中央控制系统输送监测信号,超过预设值范围的话,蜂鸣器就会报警提醒。(3)功能拓展:控制设备根据各种不同的需求自动对温湿度进行调节。采用电热、火力增温,水冷、风扇降温都比较方便;采用喷雾、洒水增加湿度,采用烘干技术,加快水分流失,保持环境干燥。202 设计任务要求分析本章详细介绍了本次设计的主要任务,即实时显示当前环境的温湿度,并且允许用户设定温湿度标准值,当环境温湿度超过或低于标准值时,系统会以蜂鸣器鸣响的方式进行报警提示,待达到标准值时,蜂鸣器停止鸣响,控制设备停止运行,系统正常工作,工作指示灯亮。 (1)温度(temperature)监控:对温度进行监控并反映在显示器上。 (2)湿度(humidity)监控:对湿度进行监控并反映在显示器上。 (3)显示:LCD显示此时此刻温湿度值,摆放在现场用于显示当前的温湿度。2.1 设计要求一个以单片机为核心的温湿度监测系统,需要实现的功能为:(1)能够准确的显示当前的温度以及湿度。温度检测的范围0-60,测温精度:2;湿度检测范围20%-100%RH,测湿精度:5RH。(2)能够自主调节当前需要温度以及湿度的预设温湿度值,在系统上面有调节按钮,可随时根据需要增加或者减少预设值。(3)一旦发现超过了预设值,蜂鸣器蜂鸣报警,报警方式为三极管驱动的蜂鸣音报警。(4)本设计采用LCD显示。2.2 系统组成依据功能设定,本系统主要分为以下三个模块:(1)温湿度采集模块:DHT11温湿度传感器作为本设计中的温湿度采集模块,使用单总线方式,接口方式简单,分辨率为8bit,能够完全满足日常环境温湿度的监测要求。(2)数据处理模块:数据处理模块采用AT89S51单片机,由其完成对温湿度采集、运算、逻辑控制的功能。(3)用户交互模块:用户交互模块主要由按键、LCD1602点阵液晶、蜂鸣器和控制器构成。其中按键用于用户设定温湿度准确值,LCD1602用于数据显示,蜂鸣器用于提示用户,控制器用于调节控制不符合要求的温、湿度。2.3 本章小结本章节主要有两部分,第一部分主要介绍了温湿度实时监测的设计要求,第二部分主要介绍了设计的系统组成,并加以简要的解释。3 硬件设计单片机是整个系统的控制中枢,它控制外围器件协调工作,从而完成特定的功能,硬件实现上采用模块化设计,每一模块只实现一个特定功能,最后再将各个模块连接在一起,这种设计方法可以降低系统设计的复杂性,本系统主要硬件设计包括电源电路、蜂鸣器电路、晶振电路,LCD显示电路以及温湿度传感器电路11。按照系统的设计功能所要求的,温湿度监控系统框图如下图3-1所示:温湿度传感器LCD温、湿度显示 蜂鸣器 单片机启动相关调控装置 键盘图3-1 温湿度监控系统框图3.1 单片机模块设计单片机作为本设计系统中的中枢单元,连接着包括温湿度传感器模块,LCD显示模块,蜂鸣器报警模块,键盘模块等所有部分。其依赖于传感器对原始信号的准确捕捉和转换,在此基础上对输入单片机的被测信号进行分析处理,并向蜂鸣器报警模块发出相应指令,实现对温湿度的现场实时监测。3.1.1 AT89S51单片机AT89S51是一款低功耗、高性能CMOS 的8位单片机,片内含4K的可编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP),也可用传统方法进行编程及通用8位微处理器于单片机芯片中,低价位AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制的领域。AT89S51提供以下的功能标准:4K字节闪烁存储器,128字节随机存取数据存储器,2个16位定时/计数器,32个I/O口,1个串行通信口,1个5向量两级中断结构,另外,AT89S51还可以进行0HZ的静态逻辑操作,并支持两种软件的节电模式,闲散方式停止中央处理器的工作,可允许随机存取数据存储器、定时/计数器、串行通信口及中断系统继续工作。掉电方式保存随机存取数据存储器中的内容,但震荡器停止工作并禁止其它所有部件的工作直到下一个复位,在AT89C51上新增加的功能使AT89S51性能有了较大提升,它的价格甚至更低,它的工作频率可达33MHz,比AT89C51的工作频率更高,ISP在线编程功能的优越性在于它不必要将芯片从工作状态下分离,特别是在改写存储器内的程序,这是一个相当方便简单的功能,它不需要像AT89C51那样外接看门狗计时器单元电路,由于它内部具有双工UART串行通道内部集成看门狗计时器,它具有全新的加密算法,大大加强的程序的保密性,有效的保护知识产权不被侵犯,它完全兼容51全部字系列产品8。图3-2 AT89S51引脚图3.1.2 单片机最小系统所谓单片机的最小系统是指使单片机能运行程序、正常工作的最简单电路系统,是保证单片正常启动、开始工作的必须电路,缺一不可。单片机最小系统一般由单片机、程序存储器、时钟电路和复位电路组成。对于AT89S51单片机,由于片内有4K的程序存储器,所以其最小系统除了单片机本身外,只需外接时钟电路与复位电路即可。3.1.3 复位电路本次设计采用的是上电复位,当RST引脚上出现了两个周期以上的高电平就会触发内部复位,这里的EA端与复位电路无关,由于数据都放在了内部存储器,所以需要对EA端置高电平1。图3-3 复位电路3.1.4 时钟电路时钟电路用于产生单片机的基本时钟信号,是用来配合外部晶体实现振荡的电路,这样可以为单片机提供运行时钟。MCS-51的时钟信号可以由两种方式:一种是内部方式,利用芯片内部的振荡电路,产生时钟信号:另一种为外部方式,时钟信号由外部引入。如果没有时钟电路来产生时钟驱动单片机,单片机是无法工作的12。AT89S51的时钟信号可由内部振荡器产生,也可由外部电路直接提供。内部振荡器的输入和输出脚分别为XTAL1和XATL2,由XTAL2给单片机内部电路提供时钟信号。当时钟信号由外部电路提供时,外部时钟引入XTAL2,而XTAL1脚接地。图3-4 晶振电路3.1.5 温湿度设置(按键)电路按键说明:左起第一个是功能键,按一次进入报警温度设置此时出现H 40,进行上限温度设置,此时设置H高温报警温度并闪烁显示;按第二次,进行下限温度设置此时出现L 03,此时设置L低温报警温度并闪烁显示;再按一次即第三次,则恢复正常的温度显示界面。第二个按键是增加键,可以对上限温度或下限温度进行增大调整第三个按键是减小键,可以对下限温度或下限温度进行减小调整;湿度同理。这样便可设置好温、湿度的上、下限。图3-5 按键实物图3-6 按键电路3.2 显示电路显示模块选用LCD1602字符型液晶模块,它是目前工控系统中使用最广泛的液晶屏之一,LCD1602字符型液晶模块是点阵型液晶,驱动方便,经过编程后显示内容多样化。工作电压一般为4.5-5.5V,本设计中采用4.5V电源,工作电流2mA,容量16*2个字符。(1)整体电路设计实物及LCD正常工作显示如图3-7所示。图3-7 正常工作LCD1602显示(2)LCD1602各引脚接口说明如表3-1所示表3-1 LCD引脚接口说明LCD1602各引脚接口说明如表(编号)符号引脚说明1VDD正极2VSS地3VL液显偏压4RS寄存器选择5R/W读/写选择6EN使能信号7D0数据8D1数据9D2数据10D3数据11D4数据12D5数据13D6数据14D7数据15BLA背光源正极16BLK背光源负极(3)引脚功能说明VCC:电源电压输入端。GND:电源地。P1口(AT89S51):P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入”1”后,被内部上拉为高电平,可用作输入。P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。专门为用户使用的I/O口,是准双向口,P1口为8位准双向口,每一位均可单独定义为输入或输出口。在编程校验期间,用做输入低位字节地址。P1口可以驱动4个TTL负载。图3-8 显示电路3.3 传感器电路DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的温湿度传感和数字模块采集技术,具有很高的稳定性和可靠性,DHT11传感器内含一个NTC测温和一个电阻式感湿元件,并与一个8位的高性能单片机相连接,在精确的湿度校验室中DHT11传感器进行过校准,以程序的形式校准系数储存在0TP内存中,检测信号的时候,在处理过程中传感器内部要调用这些校准系数,采用单线制的串行接口13,使系统集成可以有较低的功耗,而且更加简单快速,信号传输距离超过20米,作为一个数字温湿度传感器DHT11具有响应快速、抗干扰强、性价比高等优点,它的性能指标如下:湿度测量范围为2090RH;湿度测量精度为5RH;温度测量范围为050 ,温度测量精度为2,工作电压3055 V,响应时间5S,DHT1l采用4针单排引脚封装, 传感器通电后,需要等待1s,这是因为要越过不稳定的状态,在此期间不需发送指令,电源引脚(VDD,GND)之间可增加一个100nF 的电容,用以去耦滤波7。图3-9 DHT11实物图四条引角中有两条是电源引脚,有两条是输出数据的引脚,你只需要给他供上额定电压,然后再他的输出引脚采集信号就可以了。DHT11是数字型温湿度传感器,可直接以数字方式传输所采集的当前环境温湿度,DHT11采用的是单总线通信,因此只需将单片机的一个IO端口与DHT11的通信接口连接就可以实现数据的采集和传送,相对于其他电路来说比较简单。传感器电路如图3-10所示:图3-10 传感器电路 3.4 电源指示灯电路普通单色发光二极管具有体积小、工作电压低、工作电流小、发光均匀稳定、响应速度快、寿命长等优点,可用各种直流、交流、脉冲等电源驱动点亮。它属于电流控制型半导体器件,使用时需串接合适的限流电阻。发光二级管点亮一般需要3mA10mA的电流,在本设计中选择5mA,VCC=4.5V,R=1K。图3-11 电源指示灯电路3.5 系统的蜂鸣器电路微型计算机控制系统中,为了安全起见,对于一些重要的参数或系统,都设定有紧急状态报警系统,以便于提醒操作人员注意,或者采取紧急措施,本设计采用把计算机采集的数据进行数据处理、标度变换、数字滤波之后,与该参数上下限与设定值进行比较,不符合标准值则进行报警,否则就作为采样的正常值,进行显示12。本设计采用峰鸣音报警电路。蜂鸣器额定电流30Ma,而对于AT89S51单片机,P3口的灌电流为15mA,由此可见,仅靠单片机的P3口电流是不能驱动蜂鸣器的,必须使用晶体管放大电路,为了使单片机的功率更小,所以使用PNP型晶体管,当外部环境的温度或者湿度超过预设值的时候,基级变为低电平,蜂鸣器导通鸣叫11。图3-12 蜂鸣器电路3.6 本章小结 本章节主要介绍了硬件设计的总思路及其各部分电路的主要设计方法,详细的给出了各个模块(蜂鸣器,晶振电路,显示电路,按键电路,传感器电路,复位电路,电源指示灯电路)的电路设计。初步连接构造硬件,并且设计了控制部分,较细致的介绍了硬件运行。4 软件设计软件设计是本次设计中不可缺少的环节,贯穿了整个毕业设计,是本次设计能够完成的最重要的环节之一。 根据温湿度监控系统功能,系统软件流程图如图41所示:系统启动开始蜂鸣器鸣叫LCD1602初始化读取温湿度值LCD正常显示自动检测判断是否超预设?N蜂鸣器不报警Y蜂鸣器鸣叫报警启动相关调控设备图4-1 系统软件流程图YN4.1 温湿度采集模块DHT11传感器内含一个NTC测温和一个电阻式感湿元件,并与一个8位的高性能单片机相连接,在精确的湿度校验室中DHT11传感器进行过校准,以程序的形式校准系数储存在0TP内存中,检测信号的时候,在处理过程中传感器内部要调用这些校准系数,采用单线制的串行接口。首先将DHT11数据端口置低电平,发送开始信号,延时20毫秒,释放数据线,用于检测低电平应答信号。若无应答信号,则EA为高电平,返回;有应答信号,等待应答信号结束,若超出检测范围,则读数据出错,退出函数;应答信号后有80us高电平,等待高电平结束后,读出温湿度值。unsigned char DHT11_ReadTempAndHumi(void)unsigned char i = 0, check_value = 0,count = 0;EA = 0;dht11 = 0; /拉低数据线大于18ms 发送开始信号Delay_1ms(20); /需大于18 毫秒dht11 = 1; /释放数据线,用于检测低电平的应答信号/延时20-40us,等待一段时间后检测应答信号,应答信号是从机拉低数据线80usDHT11_Delay_10us();DHT11_Delay_10us();DHT11_Delay_10us();DHT11_Delay_10us();if(dht11 != 0) /检测应答信号,应答信号是低电平/没应答信号EA = 1;return ERROR;else/有应答信号while(dht11 = 0 & count+ = NUMBER) /检测计数器是否超过了设定的范围dht11 = 1;EA = 1;return ERROR; /读数据出错,退出函数count = 0;dht11 = 1;/释放数据线/应答信号后会有一个80us 的高电平,等待高电平结束while(dht11 != 0 & count+ = NUMBER)dht11 = 1;EA = 1;return ERROR; /退出函数/读出湿.温度值for(i = 0; i SIZE; i+)value_arrayi = DHT11_ReadValue();if(status = ERROR)/调用ReadValue()读数据出错会设定status 为ERRORdht11 = 1;EA = 1;return ERROR;/读出的最后一个值是校验值不需加上去if(i != SIZE - 1)/读出的五字节数据中的前四字节数据和等于第五字节数据表示成功check_value += value_arrayi;/end for/在没用发生函数调用失败时进行校验if(check_value = value_arraySIZE - 1)/将温湿度扩大10 倍方便分离出每一位humi_value = value_array0 * 10;temp_value = value_array2 * 10;dht11 = 1;EA = 1;return OK; /正确的读出dht11 输出的数据else/校验数据出错EA = 1;return ERROR;4.2 显示模块LCD1602液晶模块的读写操作,屏幕和光标的操作都是通过指令编程来实现的。首先将LCD1602的各个引脚定义,然后算出指令码,将温度显示和湿度显示的子程序分别定义,以备调用。void displayfun1()display_temp();void displayfun2()display_temp1();void display()if(!disp_mode) displayfun1(); /显示正常 elsedisplayfun2(); /设置界面4.3 蜂鸣器报警模块微型计算机控制系统中,为了安全起见,对于一些重要的参数或系统,都设定有紧急状态报警系统,以便于提醒操作人员注意,或者采取紧急措施,本设计采用把计算机采集的数据进行数据处理、标度变换、数字滤波之后,与该参数上下限与设定值进行比较,不符合标准值则进行报警,否则就作为采样的正常值,进行显示12。本设计采用峰鸣音报警电路。蜂鸣器额定电流30Ma,而对于AT89S51单片机,P3口的电流为15mA,由此可见,仅靠单片机的P3口电流是不能驱动蜂鸣器的,必须使用晶体管放大电路,为了使单片机的功率更小,所以使用PNP型晶体管,当外部环境的温度或者湿度超过预设值的时候,基级变为低电平,蜂鸣器导通鸣叫11。void display()if(temp_value/10)%100)templ)|(humi_value/10)%100)=temph | (humi_value/10)%100)=huih)beep=0;blue=0; /温度高于或等于上限值,报警 else beep=1;red=1;blue=1;4.4 Protues运行结果运用protues7.5软件绘制仿真图并运行:(由于protues版本问题,采用AT89C51代替AT89S51进行仿真,不影响仿真结果)图4-2 系统仿真图图4-3 模拟仿真运行图4.5 本章小结本章主要给出了系统流程图,了解了系统流程更好的做出硬件。通

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论