基于单片机的温湿度监测系统

刘娟花 杨幸芳
摘 要: 采用AT89S52单片机和SHT11数字温湿度传感器构成成本低廉的温湿度监测系统。由AT89S52单片机将采集到的数据处理后发送到1602液晶显示器显示,同时当温度或湿度超过设定的上限或下限值时由发光二极管与蜂鸣器产生声光报警。系统结构简单、成本低廉、抗干扰能力强、适用范围广、功耗较低,符合仪器仪表小型化的潮流,为智能化的微型温湿度监测系统的开发与研究奠定了良好的基础。
关键词: 单片机; SHT11; LCD1602; 报警
中图分类号: TN931+.3?34; TP368 文献标识码: A 文章编号: 1004?373X(2017)20?0165?04
Abstract: The AT89S52 MCU and SHT11 digital temperature?humidity sensor are used to construct a temperature?humidity monitoring system with low cost. The data acquired and processed by 52?MCU is sent to LCD1602 for displaying. If the value of temperature or humidity exceeds the set valves, the sound and light alarms are generated by LED and buzzer. The system has simple structure, low cost, strong anti?interference ability, wide application range and low power consumption, and conforms to the trend of the instrument miniaturization, which lays the good foundations for the research and development of the intelligent micro temperature?humidity monitoring system.
Keywords: microcontroller; SHT11; LCD1602; alarm
现代检测技术中温湿度测量占据着重要的位置,如何快速、准确地测量温湿度受到各行各业的重视。随着电子工业和计算机技术的发展,现代检测技术也在向自动化、智能化和数字化方向发展。近年来,利用微型机控制的数字化在线温湿度检测已成为温湿度检测技术方面的发展趋势。本文介绍的温湿度监测系统,以微型机AT89S52为基础搭建数字温湿度传感器SHT11构成一种结构简单、测量准确、价格低廉、稳定可靠的智能化温湿度检测系统,可广泛地应用于实际生产生活中。
1 系统硬件设计
本系统硬件部分由以下几个模块组成[1?2]:AT89S52单片机控制模块、温湿度采集模块、键盘设置模块、时钟模块、LCD显示模块、报警模块以及其他辅助模块。系统实现的功能为:单片机处理SHT11传感器采集到的数据,并控制液晶显示器显示出实时温度和湿度,同时当温度或湿度超过设定的上限或下限值时产生声光报警。系统总体设计如图1所示。
1.1 AT89S52单片机
AT89S52是ATMEL公司生产的低功耗、高性能CMOS 8位單片机,片内含有8 KB的EPROM和256 B的RAM,32个可编程I/O口,3个16位定时/计数器,8个中断源,1个双工串行通信口及时钟电路,片内置通用8位中央处理和FLASH存储单元,与MCS?51系列指令和引脚完全兼容。该芯片功能强大,适用于复杂控制应用场合[3?4]。
1.2 温湿度测量模块的设计
温湿度传感器选用SHT11。SHT11是瑞士Sensiron公司推出的采用了CMOSens工艺的一款数字温湿度传感器。它将温湿度感测、信号变换、A/D转换等功能高度集成在一起,封装超小,提供二线数字串行接口SCK和DATA。支持CRC校验,传输可靠性高,工作电压为2.4~5 V,其测量精度可编程调节,测量精度高,可以提供温度补偿、湿度测量值和高质量的露点计算功能,其组成结构见文献[5]。对于SHT11的操作严格依据时钟线(SCK)和数据线(DATA)不同的高低电平时序,共有5种用户命令,实现不同的功能。用户命令是由3位地址位(只支持000)和5位命令位组成的8个二进制比特。SHT11 有5条命令,分别是测量湿度(00101)、测量温度(00011)、写状态寄存器(00110)、读状态寄存器(00111)和软件复位(11110)命令。SHT11采用双线串口通信,所以只需要用到单片机的2个I/O口,SHT11与单片机的接线如图2所示。其基本工作原理是单片机向SHT11 发出命令,SHT11 利用两只传感器分别产生相对湿度、温度的信号,然后经过放大,分别送至A/D 转换器进行模/数转换、校准和纠错,最后通过二线串行接口将相对湿度及温度的数据送至单片机处理。单片机处理数据后进行数字显示并作相应的控制。
1.3 显示模块的设计
显示模块选用LCD1602液晶显示屏,它是目前工控系统中使用最广泛的液晶屏之一,显示质量高。LCD1602 字符型液晶模块是点阵型液晶,驱动方便,经过编程后显示内容多样化[4]。系统显示模块如图3所示,LCD1602通过P1口与单片机进行数据通信,将要显示的数据在液晶显示器上显示。
1.4 按键模块设计
系统键盘模块如图4所示,独立式键盘各个按键相互独立,每个按键各接1根I/O接口线,每根I/O接口线都不会影响其他I/O接口线。通过检测I/O接口线的电平状态判断出哪个按键被按下。本设计用到4个按键,从上至下分别为加一、减一、模式选择及返回键。
1.5 报警模块设计
本文设计的报警系统由红绿发光二极管和蜂鸣器组成,如图5所示。D1~D4分别为温度上限红色指示灯、温度下限绿色指示灯,湿度上限红色指示灯、湿度下限绿色指示灯。
当P0.3~P0.6分别输出低电平时,相应的二极管D1~D4导通并发光; 否则,相应的二极管D1~D4不发光。采用PNP三极管驱动蜂鸣器,当P0.7输出低电平时三极管导通,蜂鸣器鸣叫;当P0.7输出高电平时三极管截止,蜂鸣器不响。
2 系统软件设计
本课题软件部分的设计与硬件部分相对应,采取模块化的设计思路,将系统分为:温湿度采集转换模块、时钟模块、液晶显示模块、键盘模块等几个模块,分别进行设计、编译、调试完善后,将各个模块组合连接起来。这样的设计方法利于程序的修改和完善,使程序的可移植性大大增强。
上电复位后,初始化各参数值,扫描按键是否按下,如是有按键按下则执行按键处理程序;如果无按键按下则读取温湿度。显示温湿度后,将读取的温湿度与设置的上、下限温湿度值进行比较,如果超过上限或者低于下限则相应的声光报警启动,否则返回按键扫描处循环执行如上程序。
各子模块的流程图分别如图7~9所示。
3 实验验证及结果分析
系统的调试采用英国Labcenter electronics公司开发的EDA工具软件Proteus并联合Keil C51来实现仿真调试[6]。利用Keil C51软件,加载温湿度监测系统的的C语言代码,然后编译形成 HEX 文件,再用Proteus软件制作温湿度监测系统电路,并对系统进行仿真测试。仿真测试无误后,即可购买器件进行硬件电路的制作并进行实物验证。
3.1 正常工作情况
初始化设置的温度的上限值是30 ℃,下限值是20 ℃,湿度的上限值是60%RH,下限值是20%RH。图10是温度、湿度均在设定范围内的系统仿真结果。
3.2 温濕度越限情况
当温度、湿度分别超出设定的范围时,会启动声光报警电路。图11为温度35.6 ℃(高于设定的上限值30 ℃)时的仿真结果图。从图中可见红色指示灯D1点亮,蜂鸣器响。其他越限情况,如温度低于下限(绿色指示灯D2点亮,蜂鸣器响),湿度高于上限(红色指示灯D3点亮,蜂鸣器响)和湿度低于下限(绿色指示灯D4点亮,蜂鸣器响)时的仿真结果,限于篇幅不再给出。
3.3 实物验证
图12给出了系统某次测量环境温度的实物图。系统在上电之后,电源指示灯工作,并在液晶显示器上显示出实测的温湿度值,由于雨天测量,湿度较大,超出了预设的上限值,相应的报警指示灯亮,蜂鸣器持续鸣叫。
4 结 论
基于51,52单片机的自动监测系统以其智能、廉价、简单等优点在自动监测领域展现了广阔的应用前景。本设计采用AT89S52单片机和SHT11数字温湿度传感器设计了一个成本低廉的温湿度监测系统。经实验验证,该温湿度检测系统结构简单、成本低廉、抗干扰能力强、适用范围广、功耗较低,符合仪器仪表小型化的潮流,为智能化的微型温湿度监测系统的开发与研究奠定了良好的基础。
参考文献
[1] 张东东.基于AT89C51的温湿度监测系统[J].微型机与应用,2016,35(6):32?34.
[2] 杨丽文,陈如清.基于单片机的温室大棚环境参数监测系统设计[J].科技界,2015(25):170.
[3] 张世英,刘万莹,李仁兵,等.基于AT89S52单片机的温湿度监控系统设计[J].计算技术与自动化,2006,25(4):44?46.
[4] 刘宝元,张玉虹,姜旭,等.基于单片机的温湿度监控系统设计[J].国外电子测量技术,2009,28(12):77?80.
[5] 程捷,何晨.基于单片机的温湿度检测系统设计与实现[J].仪表技术,2011(6):56?58.
[6] 冯梅琳,王芸,温家旺,等.基于Proteus的温湿度数据采集系统设计与仿真[J].仪表技术,2010(2):12?15.
[7] 满红,邹存名,冀勇钢.基于单片机的仓库温湿度智能控制系统设计[J].现代电子技术,2011,34(9):118?120.
[8] 温宗周.单片机原理及接口技术[M].北京:高等教育出版社,2009.
[9] 宋戈,黄鹤松,员玉良,等.51单片机应用开发范例大全[M].北京:人民邮电出版社,2010.
[10] 周润景,刘晓霞.基于PROTEUS的电路设计、仿真与制板[M].北京:电子工业出版社,2013.