《基于51单片机的温室大棚温湿度检测报警系统设计.doc》由会员分享,可在线阅读,更多相关《基于51单片机的温室大棚温湿度检测报警系统设计.doc(20页珍藏版)》请在三一办公上搜索。
1、湖 南 科 技 大 学课 程 设 计课程设计名称: 多路温湿度测试报警系统 学 生 姓 名: 学 院: 机电工程学院 专业及班级: 09级测控一班 学 号: 指导教师: 2013年 01 月 18 日湖南科技大学机电工程学院课 程 设 计 任 务 书课程设计名称专业综合课程设计课程设计题目温室大棚温湿度检测系统设计学 生 姓 名年级 09级专业测控技术与仪器学号指 导 教 师单位湖南科技大学重点实验室课程设计起止日期2012-12-302013-1-18设计内容: 本设计是基于AT89c51单片机的大棚温湿度控制系统,通过多个DHT11温湿度传感器采集不同地点的坏境数据,并用LCD12864实
2、时显示;程序中设置所需的温湿度,若显示的坏境数据超过设置值,则通过蜂鸣器报警。任务与要求:湿度 5% 0100% 温度 1% 0100限定(20100) 限定(120%)LCD实时显示电源DC 5V 工作环境温度小于90 湿度小于90%可设置报警温湿度主要参考资料:单片机编程实用技巧丛书传感器原理与应用LCD1602系列液晶显示与模块设计摘 要随着现代技术的不断发展,生产生活现代化的不断提高,用温室大棚技术来培养农作物可以显著的提高农作物产量,降低农业生产对自然环境和气候变化的要求。然而温室大棚对于温度湿度等一系列空气成分指标要求非常严格,而现代化的温室大棚则必须有一整套温度湿度的检测和控制系
3、统,本设计就是为了适应现代温室大棚的需求,更加方便有效地观测环境温湿度,以便于更为科学合理地对温室大棚进行管理。本设计是以单片机为核心,配合温湿度传感器,以及相关的外围电路组成的检测系统,可以接收所测环境的温度和湿度信号,检测人员可以通过LCD显示的数据,实时监控环境的温度和湿度情况,如果检测到的数据超过所设定的温湿度上下限,则系统会自动产生相应的声光报警。所有的测量操作都可以通过主机控制软件来实现,温度和湿度传感器得到的测量信号,经电路转换为电信号,然后通过转换送到单片机进行数据处理,经软件分析处理后送显示装置。本系统包括系统硬件和软件设计,可靠性高,结构简单,系统还应用RS232与上位机相
4、连接,可以设置自动记录温度、湿度的相关的参数,也可以设置每隔一定的时间自动记录,操作简便,应用广泛。关键词:STC89C52单片机,温湿度传感器, LCD显示Abstract With the development of modern technology, the production of modern life continues to improve, for greenhouse technology to cultivate crops can significantly increase the yield of crops, reducing the agricultural
5、 production of the natural environment and climate change request. However, the greenhouse temperature and humidity requirements for a series of air composition indicators are very strict, and greenhouse modernization must have a set of temperature and humidity measurement and control system, the de
6、sign is for people living with and the continuous improvement of production level, to the living environment and the requirements of the production environment is particularly important, control temperature and humidity is a typical example, therefore, emerge as the times require an intelligent temp
7、erature and humidity detection system in modern life and fast, convenient and reliable detection system, especially in the industrial production if the detection of inaccurate will occur in many production accidents. To provide a better life for modern people to work, scientific research, and more c
8、onvenient facilities, we must start from the SCM technology, all toward digital control system, intelligent control direction. The design is based on single-chip microcomputer as the core, with the temperature and humidity sensor, detecting system and related peripheral circuit, can receive the meas
9、urement of environmental temperature and humidity signal, detecting personnel can be displayed by the LCD data, the temperature and humidity of real-time monitoring of the environment. The measurement operation all can be realized through the host computer control software, the measurement signals a
10、re temperature and humidity sensor, the circuit is converted to electrical signals, and then the data were processed by conversion to SCM, through the software analysis processing evacuation display device. The system hardware and software design, including the system of high reliability, simple str
11、ucture, realizes the automatic control of temperature and humidity. The system also applies RS232 and host machine is connected, can parameters related to the automatic recording of temperature, humidity settings, can also be set at a certain time automatic recording, available in the meteorological
12、 observation.Keywords :STC89C52 microcontroller, temperature and humidity sensor, LCD display 目 录第1章 概述 1.1 课题研究的背景 1.2 温湿度检测的发展状况以及存在的问题 1.3 本课程设计的主要内容第2章 系统总体方案设计 2.1 温湿度传感器 2.1.1 DHT11产品概述 2.1.2 接口说明 2.1.3 电源引脚 2.1.4 串行接口(单线双向) 2.1.5 DHT11引脚说明 2.1.6 焊接信息 2.1.7 注意事项 2.2 RS232接口 2.3 单片机STC89C52 2.4
13、 LCD1602第3章 系统的硬件设计和连接 3.1 主控模块 3.2 显示模块 3.3 温度和湿度采集模块 3.4 键盘设计 3.5 与上位机相连电路的设计 3.6 报警电路设计第4章 系统软件方案的设计 4.1 程序流程图第5章 总结与展望参考文献因此为了保证产品的质量及机台的使用寿命,对其环境的要求也很高,尤其的是对温度、湿度的控制。例如在我工作的生产发光二极管LED的工业现场,前面的两道工序固晶片和焊线要求的精度非常高,晶片必须固到碗杯的中心点,偏差不可超过1/5晶片的宽度,且对胶量的控制也有严格的要求,只有这道工序做好了,下一个工序焊线才会顺利,否则焊线将会出现很多异常,不仅会降低产
14、量也会造成质量问题,因此要求每三个小时记录一次室内的温湿度,且要保证其温度在18-23之间,湿度不可超过60%。随着信息产业的发展及工业化的进步,温度和湿度不仅仅表现在以上几个方面直接或间接影响着人类基本生活条件, 还表现在对工生物制品、医药卫生、科学研究、国防建设等方面的影响。针对以上情况,研制可靠且实用的温湿度控制器显得非常重要。常用温湿度传感器的非线性输出及一致性较差,使温湿度的测量方法和手段相对较复杂,且给电路的调试带来很大的困难。传统的温湿度测量多采用模拟小信号传感器,不仅信号调理电路复杂,且温湿度值的标定过程也极其复杂,并需要使用昂贵的标定仪器设备。因此对于温湿度控制器的设计有着很
15、大的现实生产意义。本文设计的是基于单片机STC89C52的温湿度检测和控制系统,主要以广泛应用的DHT11作为温度和湿度的检测,该仪器具有测量精度较高、硬件电路简单、并能很好的进行显示,可测试不同环境温湿度的特点。另外和控制电路相连,可以进行加湿电路和除湿电路的控制,使温度和湿度参数在预先设定的范围内,不需要人的直接参与。本系统还通过RS232和上位机相连,可以设置每隔一定的时间进行温度和湿度的采集,上传到上位机,以供查询。1.2温湿度检测的发展状况以及存在的问题传统的温度和湿度检测系统主要有以下几种:(1)水汽压(e):是水汽在大气总压力中的分压力。它表示了空气中水汽的绝对含量的大小,以毫巴
16、为单位。(2)相对湿度(rh):湿空气中实际水汽压e与同温度下饱和水汽压E的百分比,相对湿度的大小能直接表示空气距离饱和的相对程度。空气完全干燥时,相对湿度为零。相对湿度越小,表示当时空气越干燥。当相对湿度接近于100%时,表示空气很潮湿,越接近于饱和。(3)露点(或霜点)温度:指空气在水汽含量和气压都不改变的条件下,冷却到饱和时的温度。(4)干湿球温度表:用一对并列装置的、形状完全相同的温度表,一支测气温,称干球温度表,另一支包有保持浸透蒸馏水的脱脂纱布,称湿球温度表。(5)发湿度表(计):利用脱脂人发(或牛的肠衣)具有空气潮湿时伸长,干燥时缩短的特性,制成毛发湿度表或湿度自记仪器,它的测湿
17、精度较差,毛发湿度表通常在气温低于-10时使用。(6)电阻式湿度片:利用吸湿膜片随湿度变化改变其电阻值的原理,常用的有碳膜湿敏电阻和氯化锂湿度片两种。前者用高分子聚合物和导电材料碳黑,加上粘合剂配成一定比例的胶状液体,涂覆到基片上组成的电阻片;后者是在基片上涂上一层氯化锂酒精溶液,当空气湿度变化时,氯化锂溶液浓度随之改变从而也改变了测湿膜片的电阻。(7)薄膜湿敏电容:是以高分子聚合物为介质的电容器,因吸收(或释放)水汽而改变电容值。它制作精巧,性能优良,常用在探空仪和遥测中。随着智能检测系统的飞速发展,基于单片机的温湿度检测系统将多传感器系统结合在一起。如何把多传感器集中于一个检测控制系统,综
18、合利用来自多传感器的信息,获得对被测对象的可靠了解和解释,以利于系统做出正确的响应、决策和控制,是智能检测控制系统中需要解决的首要问题。在温湿度要求严格的场合,利用多传感技术可以提高系统的可靠性和精度,亦可以提高系统的时间空间的覆盖范围。1.3本课程设计的主要内容单片机是系统的控制核心,所以单片机的性能关系到整个系统的好坏。因此单片机的选择,对所设计系统的实现以及功能的扩展有着很大的影响。单片机种类很多,在众多51系列单片机中,较为常用的是ATMEL 公司的AT89C51和AT89S52单片机,AT89C51片内4KROM是Flash工艺的,使用专用的编程器自己就可以随时对单片机进行电擦除和改
19、写,片内有128字节的RAM。而AT89S52含有在系统可编程的Flash存储器,片内有8K闪存,RAM的容量也较AT89C51大,为256字节。显然这种单片机优点更多,开发时间也大为缩短。在本次设计中选用了STC89C52单片机。键盘接口电路较为简单,而显示部分有两种方案供选择:一种为LCD,一种为LED。LCD液晶显示的像素单元是整合在同一块液晶版当中分隔出来的小方格。通过数码控制这些极小的方格进行显像。显示非常细腻但是造价很高。而LED数码显示中每一个像素单元就是一个发光二极管,如果是单色,一般是红色发光二极管。如果是彩色,一般是三个三原色小二极管组成的一个大二极管。这些二极管组成的矩阵
20、由数码控制实时显示文字或图象,造价相对低廉,显示效果也较好。本设计中,最终选用的集成温度传感器DHT11,采集到的温湿度信号送至单片机,实现温湿度的显示与控制。系统主要由以上元器件组成,通过硬件电路和软件程序的设计,实现系统的基本功能。第2章 系统总体方案设计本设计是基于单片机对数字信号的高敏感和可控性、温湿度传感器可以产生模拟信号,和A/D模拟数字转换芯片的性能,此设计以STC89C52基本系统为核心的一套检测系统,其中包括单片机、复位电路、温湿度检测、键盘及显示、报警电路、系统软件等部分的设计。系统总体方框图如图2.1。键盘控制显示电路系统晶振电平变换PC机报警电路温湿度传感器单片机 系统
21、重点及组成:温湿度的检测 温湿度的显示 单片机与PC机间的通信 通过开关量控制实现温湿度上下限调节图2.1 系统总体框图2.1 温湿度传感器1、DHT11产品概述DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程
22、中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为 4 针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。2接口说明 建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻3、电源引脚DHT11的供电电压为35.5V。传感器上电后,要等待 1s 以越过不稳定状态在此期间无需发送任何指令。电源引脚(VDD,GND)之间可增加一个100nF 的电容,用以去耦滤波。4、串行接口 (单线双向)DATA 用于微处理器与 DHT11之间的通讯和同步
23、,采用单总线数据格式,一次通讯时间4ms左右, 用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低速模式。5、DHT11引脚说明Pin名称注释1VDD供电 35.5VDC2DATA串行数据,单总线3NC空脚,请悬空4GND接地,电源负极6、 焊接信息手动焊接,在最高260的温度条件下接触时间须少于10秒。7、注意事项(1)避免结
24、露情况下使用。(2)长期保存条件:温度1040,湿度60以下2.2 RS232接口RS232接口是1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准”。 该标准规定采用一个25个脚的DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。随着设备的不断改进,出现了代替DB25的DB9接口,现在都把RS232接口叫做DB9。2.3 单片机STC89C52STC89C52是一种低功耗、高性能CMOS八位微控制器,具有
25、8K在系统可编程Flash存储器,使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许ROM在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使其为众多嵌入式控制应用系统提供灵活的解决方案。2.3.1 主要特性(1) 与MCS-51单片机产品兼容;(2) 8K字节在系统可编程Flash存储器;(3) 1000次擦写周期;(4) 全静态操作:0Hz33Hz;(5) 三级加密程序存储器;(6) 32个可编程I/O口线;(7) 三个16位定时器/计数器;(8) 八个中断源;(9) 全双工UART串行通道;(
26、10) 低功耗空闲和掉电模式;(11) 掉电后中断可唤醒; 图2.3 STC89C52芯片的引脚图(12) 看门狗定时器;(13) 双数据指针;(14) 掉电标识符。如图2.3所示STC89C52芯片的引脚图VCC:电源Vss:地 P0口:8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在Flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口:具有内部上拉电阻的8位双向I/O口
27、,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX),具体如表3-1所示。在Flash编程和校验时,P1口接收低8位地址字节。P2口:具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动四个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出
28、电流(IIL)。在方位外部程序存储器或用16位地址读取外部数据存储器时,P2口送出高八位地址。在Flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动四个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为STC89C52特殊功能(第二功能)使用RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。DISRTO默认状态下,复位高电平有效。ALE/:控制信号(ALE)是
29、访问外部程序存储器时,锁存低8位地址的输出脉冲。在Flash编程时,此引脚()也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时, ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。:外部程序存储器选通信号()是外部程序存储器选通信号。当89S52从外部程序存储器执行外部代码时,在
30、每个机器周期被激活两次,而在访问外部数据存储器时,将不被激活。/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接地。为执行内部程序指令,应该接VCC。在Flash编程期间,也接收12伏VPP电压。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。2.4 LCD1602工业字符型液晶,能够同时显示16x02即32个字符。(16列2行)1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线 VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中:
31、 引脚符号功能说明1VSS一般接地2VDD接电源(+5V)3V0液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。4RSRS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。5R/WR/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6EE(或EN)端为使能(enable)端,下降沿使能。7DB0低4位三态、 双向数据总线 0位(最低位)8DB1低4位三态、 双向数据总线 1位9DB2低4位三态、 双向数据总线 2位10DB3低4位三态、 双向数据总线 3位11DB4
32、高4位三态、 双向数据总线 4位12DB5高4位三态、 双向数据总线 5位13DB6高4位三态、 双向数据总线 6位14DB7高4位三态、 双向数据总线 7位(最高位)(也是busy flag)15BLA背光电源正极16BLK背光 电源负极寄存器选择控制表 RSR/W操作说明00写入指令寄存器(清除屏等)01读busy flag(DB7),以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据第3章 系统的硬件设计和连接3.1主控模块采用STC89C52单片机作为系统的控制器。Pl口控制数码管显示温度和湿度值。P2口与DHT11连接实现湿度模拟电压量转换
33、为数字量便于单片机处理。键盘控制采用PO口其中POO是温度的设置,PO1是湿度的设置,PO2PO3是分别对温度与湿度的上下限值进行设置。原理如下图:图3.1 STC89C52单片机各引脚功能3.2显示模块3.3 温度和湿度采集模块1.通讯过程如图1所示图1总线空闲状态为高电平,主机把总线拉低等待DHT11响应,主机把总线拉低必须大于18毫秒,保证DHT11能检测到起始信号。DHT11接收到主机的开始信号后,等待主机开始信号结束,然后发送80us低电平响应信号.主机发送开始信号结束后,延时等待20-40us后, 读取DHT11的响应信号,主机发送开始信号后,可以切换到输入模式,或者输出高电平均可
34、, 总线由上拉电阻拉高。图2总线为低电平,说明DHT11发送响应信号,DHT11发送响应信号后,再把总线拉高80us,准备发送数据,每一bit数据都以50us低电平时隙开始,高电平的长短定了数据位是0还是1.格式见下面图示.如果读取响应信号为高电平,则DHT11没有响应,请检查线路是否连接正常.当最后一bit数据传送完毕后,DHT11拉低总线50us,随后总线由上拉电阻拉高进入空闲状态。数字0信号表示方法如图4所示 图4数字1信号表示方法.如图5所示 图53.4 键盘设计用了几个简单的按键将它们拼成了一个简易的键盘。为提高CPU的效率,键盘采用中断方式。按键对单片机的接口电路图如图所示。行信号
35、(KEY)接到高电平,当没有键按时,行线与列线(KEYSCAN)是断开的,且行线都是高电平(1111),行信号作为的输入端、列信号作为的输出端。可以设置列线初始状态为低电平(0000)。信号为从上到下的顺序当有键按下时,假如是K1按下,行信号与列信号接通,这时相应的行线(KEY0)变为低电平(01111),可以肯定第一行(K1,5,9,13)有键按下。下面就要运用扫描的原理了:1、因为只知道第一行有键按下,不知道是那个,可以设置列信号为0111,这时行信号变为(1111)(注:假设时钟周期很短,手还没松开,即键还在按下的状态)2、设置列信号为1011,行信号也变成(1111)3、设置列信号为1
36、101,行信号也变成(1111)4、设置列信号为1110,行信号也变成(0111),这时就可以肯定是第一个键按下。3.5与上位机相连电路的设计通过和MAX232和上位机相连接,如图3-9所示。在大气气候的检测中需要做记录时,可以通过设置单片机的参数,每隔一定的时间进行自动的做记录,省去人工的记录麻烦。Max232的T1IN和单片机的P3.2相连,R1 OUT和单片机的P3.1相连。图3.5 单片机系统与上位机的连接3.6 报警电路设计本设计采用峰鸣音报警电路。峰鸣音报警接口电路的设计只需购买市售的压电式蜂鸣器,然后通过MCS-51的1根口线经驱动器驱动蜂鸣音发声。压电式蜂鸣器约需10mA的驱动
37、电流,可以使用TTL系列集成电路7406或7407低电平驱动,也可以用一个晶体三极管驱动。在图中,P3.2接晶体管基极输入端。当P3.2输出高电平“1”时,晶体管导通,压电蜂鸣器两端获得约+5V电压而鸣叫;当P3.2输出低电平“0”时,三极管截止,蜂鸣器停止发声。NPN5.6K3.3K+5VP3.2AT89S52PB2130UP002A图3.6 三极管驱动的峰鸣音报警电路第4章 系统软件方案的设计温度控制主程序的设计应考虑以下问题:(1)温湿度采样,数字滤波;(2)越限报警和处理;(3)温度标度转换;(4)温湿度显示。通常,符合上述功能的温度控制程序由主程序和T0中断服务程序两部分组成。在该软件系统中,定时器T0为工作方式1,定时周期为125ms,8次定时器中断为1S,由于实际环境温度和湿度变化是连续和平缓的,故这里采用分段定值平缓滤波算法处理每次测得的温度和湿度值,有效防止了突发干扰使测得值波动很大,导致反馈系统关启工作,影响系统的稳定,提高了系统的抗干扰性。4.1 程序流程图