蔬菜大棚温湿度监控与报警系统的设计.docx
- 文档编号:6634135
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:30
- 大小:317.33KB
蔬菜大棚温湿度监控与报警系统的设计.docx
《蔬菜大棚温湿度监控与报警系统的设计.docx》由会员分享,可在线阅读,更多相关《蔬菜大棚温湿度监控与报警系统的设计.docx(30页珍藏版)》请在冰豆网上搜索。
蔬菜大棚温湿度监控与报警系统的设计
存档编号_________
xxxxxxxxxxxxxxxxxx
蔬菜大棚温湿度监控
报警系统的设计
教学学院xxxxxxxxxxxxx
届别2012届
专业电子信息工程
学号xxxxxxxxxxx
姓名xxxxxxxxx
指导老师xxxxxxxxxxx
完成日期2012年5月
内容摘要:
温室大棚是蔬菜生产中必不可少的设施之一,不同种类的蔬菜对温度以及湿度的要求也不尽相同,而温湿度的管理对蔬菜的生长有这至关重要的作用。
本论文设计蔬菜大棚温度湿度自动控制系统由主控制器AT89C52单片机、AM230湿度传感器、LED显示器和报警电路等构成,实现对蔬菜大棚温湿度的检测与控制,从而有效提高蔬菜的产量。
文中提出了具体设计方案,讨论了蔬菜大棚温湿度巡回检测与控制的基本原理,进行了可行性论证。
由于利用了单片机及数字控制系统的优点,系统的各方面性能得到了显著的提高。
关键词:
温湿度传感器;湿度传感器;LED显示器;报警电路。
Abstract:
Vegetableproductioningreenhouseisanessentialfacilities,differentkindsofvegetablesonthetemperatureandhumidityrequirementsalsovary,andthetemperatureandhumidityofthemanagementonvegetablesgrowthhasthevitalroleVegetablegreenhousetemperatureandhumiditycontrolsystemconsistsofthemaincontrollerAT89C52microcontroller,AM230humiditysensor,LEDdisplayandalarmcircuit,detectionandcontrolofvegetablegreenhousetemperatureandhumidity,inordertoeffectivelyimprovetheproductionofvegetables.Thispaperproposesadesignschemetodiscussthebasicprinciplesofcircuitdetectionandcontrolofvegetablegreenhousetemperatureandhumiditytocarryoutafeasibilitystudy.Astheuseoftheadvantagesofamicrocontrolleranddigitalcontrolsystem,thesystemperformancehasbeensignificantlyimproved.
Keywords:
Temperatureandhumiditysensors;humiditysensor;LEDdisplay;alarmcircuit.
1引言
温室环境测控,即根据植物生长发育的需要,自动调节温室内环境条件的总称。
现代化温室,通过传感器技术、微型计算机及单片机技术和人工智能技术,能自动测控温室的环境,其中包括温度、湿度、光照、C02浓度等,使作物在不适宜生长发育的反季节中,获得比室外生长更优的环境条件,达到早熟、优质、高产的目的。
在农业种植问题中,温室环境与生物的生长、发育、能量交换密切相关,进行环境测控是实现温室生产管理自动化、科学化的基本保证,通过对监测数据的分析,结合作物生长发育规律,控制环境条件,达到作物优质、高产、高效盼栽培目的。
温湿度度监测预警系统是针对蔬菜大棚温度监测而设计,温室计算机控制与管理系统正在不断吸收自动控制和信息管理领域新的理论和方法同时也可用于粮食仓储、冷库及烟叶发酵等场合的温度监测。
塑料大棚是开发日光资源、充分利用太阳光能的主要形式之一,能避光、增产、保湿,为蔬菜生长创造一个良好环境。
蔬菜大棚作为一个相对封闭的环境,其内部形成了一个小气候环境,良好的空气环境是蔬菜正常生长的重要条件。
因此,对棚内温度的控制是非常重要的。
本文介绍的分布式单总线蔬菜大棚温湿度监测预警系统,采用全数字化设计,直接监测每个棚内不同部分的温湿度,通过对温度的良好控制,有效地提高蔬菜的产量。
2AT89S52单片机
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
2.1CPU的结构
CPU是单片机内部的核心部分,是单片机的指挥和执行机构,它决定了单片机的主要功能特性。
从功能上看,CPU包括两个基本部分:
运算器和控制器。
下面说明控制器和运算器。
2.1.1运算器
运算器包括算术逻辑运算部件ALU、累加器ACCC、B寄存器、暂存寄存器TMP1和TMP2、程序状态寄存器PSW、BCD码运算调整电路等。
2.1.2时钟电路
AT89C52芯片内部有一个高增益反向放大器,用于构成振荡器。
反向放大器的输入端为XTAL1,输出端为XTAL2。
在TXAL1和XTAL2两端跨接由石英晶体及两个电容构成的自激振荡器,如图2-1所示。
电容器C1和C2通常都取30pF左右,选用不同的电容量对振荡频率有微调作用。
但石英晶体本身的标定频率才是单片机振荡频率的决定因素。
其振荡频率范围是1~12MHz。
本设计考虑系统的独立完整性,选用内部时钟方式,石英震荡频率选用12MHZ,ALE信号频率为2MHZ。
2.2定时器
AT89C52单片机的内部有两个16位可变成定时器0(T0)和定时器1(T1),它们都有定时或是事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合。
它们具有计数和定时两种工作方式以及四种工作模式。
定时器T0具有方式0、方式1、方式2和方式3四种工作方式。
T1具有方式0、方式1和方式2三种工作方式。
2.3中断系统
AT89C52单片机有五个中断请求源。
其中,两个外部中断源;两个片内定时器/计数器(T0、T1)的溢出中断源TE0和TF1;一个片内串行口接受或发送中断源RI或TI。
这些中断请求分别由单片机的特殊功能寄存器TCON和SCON的相应位锁存。
当几个中断源同时向CPU请求中断,要求CPU提供服务的时候,就存在CPU优先响应哪一个中断请求,于是一些微处理器和单片机规定了每个中断源的优先级别2.1主要性能。
2.4I/O口结构
图1引脚图
AT89C52单片机有4个8位并行I/O接口,记作P0、P1、P2和P3,每个端口都是8位准双向口,共占32根引脚。
每一条I/O线都能独立地用作输入或输出。
每个端口都包括一个锁存器(即特殊功能寄存器P0~P3),一个输出驱动器和输入缓冲器,作输出时数据可以锁存,作输入时数据可以缓冲,但是这四个通道的功能完全不同。
P0口:
P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下所示:
在flash编程和校验时,P1口接收低8位地址字节。
P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)。
P2口:
P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。
对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。
在这种应用中,P2口使用很强的内部上拉发送1。
在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:
P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个TTL逻辑电平。
对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
P3口亦作为AT89S52特殊功能(第二功能)使用。
(1)控制信号引脚RST/
、ALE/
、
和
/
。
RST/
:
复位/备用电源输入端。
单片机商店后,只要在该引脚上输入24个振荡周期(2个机器周期)宽度以上的高电平就会使单片机复位;若在RST与Vcc之间接一个10
F的电容,而在RST与Vss之间接一个的下拉电阻,则可实现单片机上电自动复位。
(2)时钟电路引脚XTAL1和XTAL2。
XTAL1:
接外部晶体的一端。
在单片机内部,它是反相放大器的输入端,该放大器构成了片内振荡器。
在采用外部时钟电路时,对于HMOS单片机上,此引脚必须接地;对AT89C52单片机,此引脚作为驱动端。
XTAL2:
接外部晶体的另一端。
在单片机内部,接至上述振荡器的反相放大器的输出端,振荡器的频率是晶体振荡频率。
若采用外部时钟电路时,对于HMOS单片机上,该引脚输入外部时钟脉冲;对AT89C52单片机,此引脚应悬空。
2.5引脚第二功能
P3.0~P3.7:
P3是8位准双向I/O端口。
它是一个复用功能口,作为第一功能使用时,为普通I/O口,其功能和操作方法与P1口相同。
作为第二功能使用时,各引脚的定义如下表。
P3口的每一条条引脚均可以独立的定义为第一功能的输入输出或第二功能。
P3口能驱动4个LSTTL负载。
表2-2功能表
口线
第二功能
P3.0
RXD(串行口输入)
P3.1
TXD(串行口输出)
P3.2
(外部中断0输入)
P3.3
(外部中断1输入)
P3.4
T0(定时器0的外部输入)
P3.5
T1(定时器1的外部输入)
P3.6
(外部数据存储器“写”信号输出)
P3.7
(外部数据存储器“写”信号输出)
2.6程序存储器及数据存储器
2.6.1程序存储器
对AT89C52芯片来说,片内有8K字节ROM/EPROM,片外可扩展60K字节EPROM,片内和片外程序存储器统一编址。
在程序存储器中,有6个地址单元被保留用于某些特定的地址,如下
表2-1AT89C52的复位、中断入口地址
入口地址
说明
0000H
复位后,PC=0000H
0003H
外部中断入口
000BH
定时器T0溢出中断入口
0013H
外部中断入口
001BH
定时器T1溢出中断口
0023H
串行口中断入口
2.6.2数据存储器
AT89C52数据存储器空间也分为内片和外片两大部分,即片内数据存储器RAM和片外数据存储器RAM。
如何区别片内、片外RAM空间呢?
片内数据存储器最大可以寻址256个单元,片外最大可扩展64K字节RAM,并且片内使用的是MOV指令,片外64KROM空间专门为MOVX指令所用。
3方案设计与比较
方案一:
控制器选择52单片机;是对于温度的监测和湿度的监测,可以选择温湿度传感器。
对于显示部分可以用一个LCD液晶显示器,报警可以用一个蜂鸣器就够了。
方案二:
控制器选择52单片机;温度湿度测量分别用温度传感器和湿度传感器来实现,其他同方案一。
如果对于温度湿度测量分别选择温度传感器和湿度传感器来实现那么相当的浪费单片机资源综上,方案一性价比更好,所以选择方案一。
4整体设计方案
(1)采用DHT22温湿度传感器来进行温度与湿度的测量,通过单片机将采集的数字信号进行处理,DHT22是单总线接口的,每次传输40位的二进制数据,16位温度数据,16位湿度数据和8位校验和位,转化为十进制数据后只要对应除于10就是对应的温度和湿度数据,温度为摄氏度,湿度为%RH;然后将得出的数据送1602液晶进行显示就好了;当温度达到37.1度时蜂鸣器会报警提示,当湿度超过80%RH时报警。
(2)既然选择了方案一,那么设计思路就很清晰了,首先是选择主芯片单片机。
现在市场上主要的大概有五类单片机品牌,其中有Intel公司开发的51系列单片机应用最广,现在市场上出现的比较多的是STC和AT字母开头的,出自两个大公司,性价比比较高,由于市场上的51和52的价格相当,而两者只是存储器大小的不同而已,52比51要大,可以写更多的程序,所以我选择52,市面上的温湿度传感器种类比较多,这里我选择相对较便宜的DHT22,它采用的是单总线接口技术,数字数据输出,对于数据的处理比较简单方便。
显示器用比较常见的LCD1602,报警就用一个蜂鸣器。
功能框图如下:
图2功能框图
5硬件电路设计
5.1最小系统
复位电路的目的就是在上电的瞬间提供一个与正常工作状态下相反的电平。
一般利用电容电压不能突变的原理,将电容与电阻串联,上电时刻,电容没有充电,两端电压为零,此时,提供复位脉冲,电源不断的给电容充电,直至电容两端电压为电源电压,电路进入正常工作状态。
另外在程序运行过程中有时候会出现程序跑飞等现象,这是就必须要重新运行程序所以在上电复位的基础上再加上一个按键复位的功能,复位电路采用按键复位,如图2所示。
图3复位电路
晶振是给单片机提供工作信号脉冲的.这个脉冲就是单片机的工作速度比如12M晶振.单片机工作速度就是每秒12M.和电脑的CPU概念一样.当然.单片机的工作频率是有范围的.不能太大.一般24M就不上去了.不然不稳定,跨接的两个电容是振荡回路交联电容电容大小没有固定值.一般二三十p.时钟电路如下所示:
图4时钟电路
5.2数据显示
5.2.1LCD1602引脚功能
数据显示部分采用的是1602液晶,外形图如下所示,1602液晶能显示16*2个数字或字符,能够满足要求所显示的温度和湿度数据。
图51602液晶的正面(绿色背光,黑色字体)
字符型LCD1602是指显示的内容为16*2,即可以显示两行,每行16个字符。
通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚,
LCD完全一样,引脚定义如下所示:
表1字符型LCD1602引脚定义
1
Vss
电源地
2
Vcc
电源(+5V)
3
Vee
对比调整电压
4
RS
0/1
输入
0=输入指令
1=输入数据
5
R/W
0/1
输入
0=向LCD写入
1=从LCD读取
6
E
1,1→0
输入
使能信号
7
DB0
0/1
输入/输出
数据总线line0
8
DB1
0/1
输入/输出
数据总线line1
9
DB2
0/1
输入/输出
数据总线line2
10
DB3
0/1
输入/输出
数据总线line3
11
DB4
0/1
输入/输出
数据总线line4
12
DB5
0/1
输入/输出
数据总线line5
13
DB6
0/1
输入/输出
数据总线line6
14
DB7
0/1
输入/输出
数据总线line7
15
A
+VCC
LCD背光电源正
16
K
接地
LCD背光电源负
5.2.2时序
基本操作时序:
读状态输入:
RS=L,RW=H,E=H输出:
DB0~DB7=状态字写指令输入:
RS=L,RW=L,E=下降沿脉冲,DB0~DB7=指令码。
输出:
无读数据输入:
RS=H,RW=H,E=H输出:
DB0~DB7=数据写数据输入:
RS=H,RW=L,E=下降沿脉冲,DB0~DB7=数据输出:
无。
1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如图10-58所示,这些字符有:
阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”
读的时候,先读左边那列,再读上面那行,如:
感叹号!
的ASCII为0x21,字母B的ASCII为0x42(前面加0x表示十六进制)。
5.2.3指令集
1602通过D0~D7的8位数据端传输数据和指令。
显示模式设置:
(初始化)00110000[0x38]设置16×2显示,5×7点阵,8位数据接口;
显示开关及光标设置:
(初始化)00001DCBD显示(1有效)、C光标显示(1有效)、B光标闪烁(1有效)000001NSN=1(读或写一个字符后地址指针加1&光标加1),N=0(读或写一个字符后地址指针减1&光标减1),S=1且N=1(当写一个字符后,整屏显示左移)s=0当写一个字符后,整屏显示不移动数据指针设置:
数据首地址为80H,所以数据地址为80H+地址码(0-27H,40-67H)其他设置:
01H(显示清屏,数据指针=0,所有显示=0);02H显示回车,数据指针=0显示模块的连接
如下图9所示,使用液晶显示器LCD1602作为显示模块,VDD接+5V电源驱动,VSS接地,D0-D7分别接10K的上拉电阻,并与单片机接口中的P0口对应连接。
RS、RW、E分别与单片机接口中的P2.5、P2.6、P2.7连接。
此外,VEE接一个10K的滑动变阻器,这样就可以对液晶显示器的亮度进行调节。
图8液晶显示器LCD1602
图9AT1602液晶的外形尺寸
5.3报警电路
报警电路采用三极管驱动蜂鸣器来实现,原理简单且经济实用,P3.6口输出的是控制信号,Q1相当于一个电子开关,用来控制蜂鸣器的供电通断。
当P3.6口输出高电平时,Q1饱和导通,LS2获得电工作发出鸣响,当P3.6空输出低电平时Q1截止蜂鸣器失电,停止工作。
原理图如下所示:
图10报警电路原理图
5.4总电路图分析
综上,电路总原理图如下所示:
采用内部时钟方式的晶振频率为11.0592M,两端跨接的33pF电容用于帮助起振,复位电路采用复合复位方式,上电后电容充电RST端会有一个短暂的低电平复位,一段时间后电容充满电恢复为高电平芯片正常工作,当按键按下时电容放电,弹起后特性通上电复位,液晶采用P0口驱动,上拉一个10K排阻,传感器是单总线的,只要有一个口连接就可以,这里采用P2.5口。
图11电路总图
6.软件设计
LCD1602液晶和DHT22温湿度传感器都是有各自的控制寄存器,要想对其进行正确的操作及运用就必须先按照它的要求对它们进行初始化,包括设置读写转换等,初始化程序完成后就能够通过调用相应子程序来启动DHT22并读出数据,之后显示到LCD1602上,同时还要对温湿度数据进行判断,如果超过预设报警值则给信号让蜂鸣器报警。
图12主程序流程图
DHT22是已校准数字型输出的温湿度传感器,40位二进制数据输出,16位温度数据16位湿度数据,8位校验位,只要将收到的数据转化为十进制数据就能通过1602液晶进行显示,1602液晶有两行32个字符位,可以分别用上下两行来显示温度和湿度数据,当温度或湿度数据达到一定值时就通过单片机中断进行报警提示,对于DHT22由于仿真软件库里没有对应的原件模型,所以对应数据采集这一块就只能是软件一点一点的调试了,好在DHT22模块应用起来比较简单,编写程序也不会很难,至于常见的1602液晶,时序如图3所示:
图13液晶读时序图
图14液晶写时序图
7调试与测试结果分析
7.1调试分析
由于所使用的温湿度传感器DHT21只是常见温湿度传感器SHT15的替代品,并不很同用,所以大多仿真软件里的元器件库里并没有这个器件,所以就没有办法用软件仿真了,只能不断的将程序下到硬件里面进行调试了。
7.2测试结果
(1)能够实时检测蔬菜大棚温度情况并显示,如有异常报警提醒;
(2)能够实时监测蔬菜大棚湿度情况,如果异常,报警。
8.结束语
本设计本着最大限度的节省人力物力为基础,方便快捷为目的,加上高效低成本为原则对元件进行了选择,经过半年的设计本系统以较低的成本和优越性得到的广泛的好评,特别是采用了先进的“一总线”器件进行温度测量体现了速度快|、精度高、测点多、布线少等诸多优点,可以实现温湿度的巡回测量和显示,能对超标的温度和湿度及时准确的报警并同时进行自动选择性的调节处理,大大的提高了蔬菜的成活率以及大幅度减轻管理者的负担,使蔬菜种植能获得一种可观的经济收益,是大棚蔬菜种植者的首选产品。
参考文献
[1]徐伟忠.计算机技术在农业领域的应用.丽水市科技局远程教育直播中心,2004,50-54
[2]胡乾斌.单片微型计算机原理与应用[M].华中科技大学出版社,1996,99-103
[3]杨振江.A/DD/A转换器接口技术与实用线路[M].西安电子科技大学出版社,115-124
[4]黄惠媛,李润国.单片机原理与接口(自动化控制专业)[M].海军出版社,2006,200-206
[5]杨金岩.8051单片机数据传输接口扩展技术与应用实例[M].人民邮电出版社,2005,44-48
[6]胡学海.单片机原理及应用系统设计[M].电子工业出版社,2005,90-94
[7]沙占友,王彦朋,孟志永.单片机外围电路设计[M].电子工业出版社,2003,70-74
[8]王新贤,蒋富瑞.实用计算机控制
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 蔬菜 大棚 温湿度 监控 报警 系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)