基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc

上传人:夺命阿水 文档编号:23107 上传时间:2022-07-16 格式:DOC 页数:38 大小:214.50KB
返回 下载 相关 举报
基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc_第1页
第1页 / 共38页
基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc_第2页
第2页 / 共38页
基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc_第3页
第3页 / 共38页
基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc_第4页
第4页 / 共38页
基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的大棚温湿度监测系统的设计-本科毕业论文设计.doc(38页珍藏版)》请在课桌文档上搜索。

1、大棚温湿度监测系统的设计The design of temperature and humidity monitoring system in greenhouse 摘要在大棚种植术里,温湿度是影响作物产量的关键因素,传统的温湿度测量采集方式具有精度不高,操作费时费力的问题,不能够动态监测,很容易造成由于环境因素突变而造成的减产甚至无产的惨痛损失。本设计以AT89S52单片机为控制核心,用SHT11数字式温湿度传感器作为数据采集,并把数据显示在LCD显示屏上,能任意时刻观测到大棚部的实时环境参量;用户可自己设定温湿度上下限,当系统检测到的温湿度在平安阀值之外立即通过报警电路报警。这样设计出来的

2、系统具有实时性、精度高、稳定性、低能耗、低本钱、操作简单等诸多优点,可广泛应用与大棚种植的环境之中。关键词:AT89S52; SHT11;大棚;温湿度;传感器AbstractIn greenhouse cultivation technique, the temperature and humidity are the key factor to affect the yield of crops. Measurement of temperature and humidity acquisition are the traditional way which is not accurate

3、enough. It conclude time-consuming problem, can not dynamic monitoring, and very easy to cause a painful loss even no gain due to sharply environment change.The design use AT89S52 microcontroller as the control core, and SHT11 digital temperature and humidity sensor is used for data acquisition, the

4、 data are displayed on the LCD screen, real-time environmental parameters within the greenhouse can be observed at any time. The user can set the upper and lower limits of temperature and humidity, When the temperature and humidity are not in the safe range, the system will alarm via alarm circurt.

5、This kind of system design with real-time, high precision, stability, low energy consumption, low cost, simple operation and many other advantages, can be widely used in greenhouse cultivation environment.Keywords: AT89S52; SHT11; temperature and humidity; monitoring; alarm目录摘要IAbstractI第一章绪论11.1选题背

6、景11.2国外研究现状11.3系统主要设计容1系统框图1元器件的选择1第二章系统硬件设计12.1系统性能概述12.2 单片机模块12.2.1 AT89S52 主要功能概述12.2.2 AT89S52 封装构造12.2.3 AT89S52引脚功能12.3 单片机最小系统12.3.1 单片机12.3.2 晶振电路1复位电路12.4 传感器模块12.4.1 SHT11简介12.4.2 SHT11端口介绍12.4.3 SHT11典型应用电路12.5显示模块12.5.1 LCD1602概述12.5.2 LCD1602特性12.5.3 LCD1602引脚说明12.6按键电路12.7 报警电路1第三章系统软

7、件设计13.1 系统主程序设计方法13.2 LCD1602显示子程序13.3 DHT11温湿度采集子程序1第四章系统测试14.1 软件测试14.1.1 软件测试总结14.2 硬件测试14.2.1 系统硬件仿真1硬件测试总结14.3 实物测试14.3.1 实物系统概况14.3.2 实物报警测试14.3.3 实物按键测试14.3.4 实物测试总结1结语1参考文献1致1附录1第一章绪论1.1选题背景近期,我国温室的总种植面积位于世界前列,产业的开展迅猛。但是,我国的温室自动控制技术远远跟不上温室数量的增长,农业生产还在使用大量的人力劳动,不仅劳累,而且因为无法对温室环境进展准确监测,不仅浪费了大量的

8、资源,还使作物产量受到了影响,降低了收入。同现代化农业兴旺的国家相比,我国在这一方面还是有比拟大的差距,特别在是对温室生产环境的各个因素的自动监测与控制方面。本课题目的在于研究一个基于单片机为主控芯片下的大棚温湿度自动监测系统,由于单片机及相关附加部件的经济性,使得其能广泛应用于广阔农民之中,从而通过对大棚温湿度的科学量化实时监测调整对作物的环境从而提高农业产量,造福广阔农民,其实用性使得这个研究很有必要。1.2国外研究现状上个世纪70年代开场,国外就利用当时开展的模拟技术对温室环境因子控制开展研究,辞别了之前人工测量的落后时代,随着研究的深入和进步,分布式控制系统便进一步在此领域开展起来了。

9、随着世界各国的温室自动控制技术的迅猛开展,如以色列、荷兰、日本美国等西方兴旺国家,都实现了根据所植入和采集到的温室生物的特点与要求,对温室所处的多方面因素进展自动控制,包括温度、湿度、光照强度、水分、气体浓度、肥料等各个方面1。在荷兰,其玻璃温室已经可以通过计算机控制,实行全自动无人化控制生产;在日本,其温室自动控制在温室生产的各项作业中都逐步实现了无人化、全自动化。通过热电技术的使用,荷兰实现了准确控制成熟期的水果和蔬菜,鲜花和其他植物的开花期,满足在各种节日的时间需求的人;在英国,伦敦大学农业学院研制出来的温室自动控制技术,可以对超过50公里的温室环境进展监控,包括温度和湿度,光照强度,气

10、体浓度和水等环境因素。80年代之后,中国相关科研人员不断学习西方兴旺国家在温室控制领域取得的成果,并且积累总结出自身经历,化为适应中国外乡的技术,在研究初始阶段,只能对单一环境因子实现自动控制,但在随后快速开展的微机技术、传感技术等高新技术的驱动下,自动控制的领域有了翻天覆地的变化,通过温室生产,可利用计算机对生物生长所需的局部或者全部的环境因素进展自动控制,使农业生产方式有了巨大的改变,生产信息化、工厂化等已经成为了世界上农业广泛生产的新途径。1.3系统主要设计容系统框图控制单元AT89S52复位电路1602显示电路温湿度传感器报警电路键盘输入电源电路图1.1 系统框图元器件的选择利用AT8

11、9S52单片机控制单元的设计,传感器采用SHT11数字温湿度传感器,1602A双液晶显示器实时显示温度和湿度,蜂鸣器报警电路,并用三极管驱动,LED报警信息电路。在单片机中,ATMEL公司生产的C51系列单片机具有本钱低廉、运行稳定、开发周期短、易操作使用等优点,但是每次写程序的时候都要进展拔插,不仅在调试的时候比拟繁琐,而且对芯片也会造成一定的损害;而S系列的AT89S52单片机弥补了这一缺陷,不仅支持在线ISP编程,免除繁琐的编程拔插,还比89C51 多了一倍的存,因此可以支持更大的程序,这样有利于该系统日后的功能拓展。在数据采集模块上面,为了使得整体电路更加精简,减少繁杂的外围电路,A/

12、D转换电路,使用集成式的数字式温湿度传感器SHT11。同样的道理,1602液晶显示器可以显示双行字符,满足了设计的显示要求。第二章系统硬件设计2.1系统性能概述作为一个大棚温湿度监测系统,其核心任务是对棚环境进展自动测量。该系统上电初始化后,通过SHT11感应并检测大棚的温湿度值,传送给AT89S52核心处理单元,此时处理器调出部设定好的温湿度上下限,据此比照判断对应数据是否异常,然后做出报警与否的反响;确定是否异常超过预设的时间,如果超过预定时间,异常信号从报警电路输出;然后继续确定异常处理,如果解决了,然后就会解除报警。这样一来,通过单片机的核心处理控制功能来采集实时环境信息,让用户可以实

13、时高效地获取大棚部的环境状态,从而能够及时实施管理。2.2 单片机模块单片机作为一种微型计算机,广泛应用在工业自动化、自动控制、智能仪器仪表等领域2,具有体积小、本钱低的特性,功能齐全,简单方便,开展迅速,嵌入容易。本设计采用AT89S52单片机,单片机是一种低功耗,高性能CMOS8位微控制器,有8K的系统可编程闪存。它兼容MCS-51系列的引脚,适用于所有标准80C51指令集。从而使该器件进展编程,因此它能够在进展程序烧录是不进展屡次拔插,可防止不必要的繁琐程序以及对装置的损耗甚至损坏。2.2.1 AT89S52 主要功能概述AT89s52提供以下标准功能:8K字节的Flash闪速存储器,2

14、56字节部RAM,拥有32个I/O口线、3个16位定时器/计数器、一个6向量两级中断构造、1个全双工串行通信口以及片振荡器及时钟电路。与此同时,AT89S52可将至0 Hz的静态逻辑操作,并支持两种软件可选的结点工作模式。空闲方式停顿CPU工作,但允许RAM和定时器/计数器、串行通信口及中断系统继续工作。掉电方式下会保存RAM中的容,但是振荡器停顿工作并且制止其它所有部件工作,直到下一个硬件复位。2.2.2 AT89S52 封装构造图2.1 AT89S52 PDIP封装构造2.2.3 AT89S52引脚功能VCC: 电源引脚GND: 逻辑地P0口:8位的地址和总线复用I/O口。P1口:I/O端

15、口,8位,具有部上拉电阻。P2口:P2口是一个带有部上拉电阻的8位双向I/O口。P3口:端口P3是具有部上拉电阻的8位双向I/O口。P3口依然和AT89C51一样提供了它的第二功能。RST:复位输入端口,复位方式是当其工作是在RST引脚接入持续时间长达两个机器周期以上高电平。ALE/:地址锁存允许。:片外程序存储器的读选通信号。/VPP:外部访问允许端口。第二功能,即VPP功能,在对片Flash进展编程的时候,要在这个引脚上接入12V 的编程电压。*TAL1:片振荡器反相放大器和部时钟发生器的输入端。*TAL2:片振荡器反相放大器的输出端。2.3 单片机最小系统单片机最小系统就是单片机能够运行

16、程序,正常工作最简单电路系统,是保证单片机的正常启动和开场工作的必须电路,组成这局部的东西缺一不可,单片机最小系统应该有单片机、晶振电路、复位电路。2.3.1 单片机在上节已经作了阐述。2.3.2 晶振电路在Proteus仿真环境里如图2.2 。图2.2 单片机振荡电路系统在执行程序的时候需要一个稳定的时钟信号,一切的指令都需要这样的时钟信号才能够有条不紊地执行。单片机系统所需的时钟信号由晶振提供,并且其运行速度与频率的上下息息相关,呈现出正比的规律,单片机产生的频率越高其运行速度就越快,反之则越慢。在一般环境下,晶体振荡器的频率五十的绝对精度可以到达百万,足够一般使用,先进的水晶会更准确。S

17、TC89S52采用11.0592MHz的晶振作为振动源,单片机部含振荡器电路,所以震荡电路的连接跟8051单片机一样,所连接的电容容量为22pF即可。复位电路如同计算机,单片机在执行程序的时候可能会遇到各种各样的意外情况而使系统瘫痪或者软件跑飞,因此就需要一个复位机制。就好比计算机的重启局部,单片机复位电路使得其具有恢复正常运作的功能,当按下复位按键的时候,部的程序会重新从头开场执行。图2.3 复位电路单片机的复位电路由两种方式,分别是上电自动复位和按键复位,本设计采用的是上电自动复位电路,实现原理如图2.3。2.4 传感器模块2.4.1 SHT11简介目前在电容式温湿度传感器的开展中,以盛世

18、瑞恩公司制造的SHT*系列的产品占主要份额,即集成的单片智能数字化温湿度传感器3。这种产品在工业CMOS过程中采用了微加工技术,从而使其有长期的稳定性和比拟高的可靠性。它的外观和引脚如图2.4所示。图2.4 SHT11外观和引脚这个温度和湿度传感器由一个湿度传感器探头式温度测量元件和电容器体,还包含了A/D转换器4,这样一来就能够免去复杂的外围电路而使该装置直接输出数字信号。对于传感器的系数校准方面,它会在对外界检测到相应信号的时候自动调用存储在OTP存里的校准系数程序。其湿度测量围为0%100%RH,测量精度为0.1%RH;温度测量围为-40 123.8 ,测量精度为0.01。端口介绍VDD

19、 :电源引脚。SHT11的额定电压为5V。一般在3.3V就可以正常工作,上电后电源引脚可以接上一个100nF 的电容。SHT11的串行接口优化传感器读出和有效的电力消耗。传感器可以连接到一个I2C总线,不干扰其他设备连接到总线,控制器必须在协议之间进展切换。GND:地。SCK:串行时钟输入。DATA:串行数据引脚。这个传感器的三态串行数据引脚用来收发数据。传感器发送命令到串行数据时钟SCK的有效前沿,并且必须保持稳定在较高的水平时,SCK,SCK边缘的数据值可能倒台后发生改变。为了保持平安通讯数据有效,应当延长在TSU上升和THO下降沿的SCK后,分别见图2.5。图2.5 SHT11收发数据时

20、序用于读取数据传感器、数据SCK已经是低电平,后是有效的电平SCK仍然有效,直到下一个下降沿到来。为了防止信号争用单片机必须唯一用低电平驱动数据位,所以通常在该引脚外部接上10k大小的上拉电阻。2.4.3 SHT11典型应用电路图2.6 SHT11典型应用电路2.5显示模块2.5.1 LCD1602概述本系统选择的字符型显示器是一种用 5*7 点阵图形显示字符的显示器,根据可以显示的字数多少可以分为 2 行 20 字、2 行 16 字、1 行 16 字等。通常我们所用的是 2 行 16 字,也就是本系统采用的 LCD1602 模块。液晶显示器具有体积小,功耗低,微薄而轻,使用方便,显示容丰富等

21、优点,已应用于许多低功率器件。这个装置的引用使得这些电子设备的人机界面变的越来越形象和直观。图 2.7 是该模块的实物图。图2.7 LCD1602实物图2.5.2 LCD1602特性该类型液晶显示模块部有字符发生器CGROM,也就是字符库。可以显示192个5*7点阵字符。如图2.8。因此,每个字母和数字都有唯一的一个代码至,而且恰好与ASCII码中的字母和数字一样。因此在显示字母和数字的时候,向LCD1602送入对应的ASCII码就行了。图2.8 LCD1602ROM字符库的容2.5.3 LCD1602引脚说明字符型 LCD 通常有 14 条引脚无背光线或 16 条引脚线带背光两种接口形式5,

22、其中 16 条引脚的多出了背光电源线 VCC(15 脚)和地线 GND(16 脚),各引脚定义如表 2.1 所示。 2.1 LCD1602 引脚功能定义编号符号引脚说明编号符号引脚说明1VSS电源地9DB2Data2VDD电源正极1DB3Data续表2.33VL液晶显示偏压11DB4Data4RS数据/命令选择12DB5Data5R/W读/写选择13DB6Data6E使能信号14DB7Data7DB0数据15BLA背光源正极8DB1数据16BLK背光源负极2.5.4 命令格式及功能说明 (1) 清屏。下面是命令格式:表2.2 清屏命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB00

23、000000001这条命令将屏幕显示去除,光标归位。 (2) 返回。表2.3 返回命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000000001*该指令将DDRAM和显示RAM的地址置0,将显示返回到原来的位置。 (3) 输入方式设置。命令格式如下:表2.4 输入方式设置命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB000000001I/DS这段指令的功能室设置光标的移动方向,并且指定是不是将整体显示移动。I/D=1 增量方式I/D=0 减量方式S=0 移位S=1 不移位 (4) 显示开关控制指令。表2.5 显示开关指令RSR/WDB7DB6DB5DB4DB3D

24、B2DB1DB00000001DCB功能:控制整体显示器的开/关、光标的开/关、光标所处字符闪烁与否。D=0 显示器关; D=1 显示器开;C=0 光标关; C=1 光标开;B=0 字符不闪烁;B=1 字符闪烁。(5) 光标移位指令。表2.6 光标移位指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000001S/CR/L*功能:让光标移位或者整体显示移位。S/C=0 光标移位; S/C=1 显示移位;R/L=0 向左移位; R/L=1 向右移位。(6) 功能设置指令。表2.7 功能设置指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB000001DLNF*功能:设置数

25、据总线位数和显示的行数及其字型。DL=0 4位数据接口; DL=1 8位数据接口;N=0 单行显示; DL=1 双行显示;F=0 5*7点阵; F=1 5*10点阵。(7) CGRAM地址设置指令。表2.8 CGRAM设置指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB00001CGRAMD的地址低6位设置CGRAM数据显示存储器的地址,围为0-36。(8) DDRAM地址设置指令。表2.9 DDRAM设置指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0001CGRAMD的地址低7位设置DDRAM数据显示存储器的地址,围为0-127 。(9) 读忙信号及地址计数器。表

26、2.10 读忙信号指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB001BFAC容低7位指令解释如下:BF=0 LCD不忙此时可以接收命令和数据; BF=1 LCD忙;AC是地址计数器值,围是0-127 。(10) 向CGRAM或DDRAM写入数据指令。表2.11 写数据指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0010要写入的数据D7D0功能:向DDRAM写入字符码以显示对应字符。(11) 从CGRAM或者DDRAM中读出数据指令。表2.12 读数据指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0011要读出的数据D7D02.6按键电路按键电路要完

27、成的任务有:判别是否有按键按下,如果有就进入下一步工作;然后识别哪一个键被按下,求出相应的键值;依据键值找到相应的处理程序入口。在单片机系统中我们常用的键盘是按键式键盘,那个按键实际上就是一个开关。图2.9是按键按下时行线电压输出波形图。图2.9 按键抖动现象由图可知按键在开闭的一瞬间都有抖动期,根本上在5-10ms左右,在键盘被按下的稳定期,电平状态呈现出低电平。因此判定按键是否按下实质上就是检测行线输出的电压时低电平还是高电平。假设为高电平,则按键断开;假设低电平,按键闭合。但是由于其机械特性导致的抖动现象,我们必须消除按键的抖动从而消除对按键闭合与否的判断障碍,提高判别的准确性。消去按键

28、抖动的方式有两种:软件延迟和采用专门的键盘接口芯片。考虑到使用系统的本钱和简单消除抖动的角度,我们采用的是软件延时的设计方法。利用软件延时的方法消除按键抖动的思想:当检测到按键按下时,行线电平状态为低电平,此时执行一段延时为10ms 的子程序,再确认电平是否为低电平,如果此时真有按键按下,则应仍为低电平。反之,当按键松开是,该按键所在的行线跳变为高电平,同样执行一段延时10ms 的延时子程序后,再看是不是高电平,如果为高电平,则表示按键已经释放6。这样的操作可以到达消除两个抖动期的影响,大大提高可靠性。P3口,四个按键满足对系统温湿度上下限值的设定。连接方式如图2.10:图2.10 键盘电路S

29、ET 键的作用是选择调整工程,即温度上限、温度下限、湿度上限、湿度下限四个可选,OK是确定键,UP和DOWN分别是加和减的操作。通过这几个按键和对该装置设定允许的温湿度上下限,超过该设定值就会启动报警电路发出警报。2.7 报警电路为了让电路在检测到环境温湿度超过预设值的时候做出反响,本设计采用了声光报警电路,蜂鸣器发出声音提醒大棚农户,通过8050晶体管来驱动蜂鸣器;四个LED灯分别对应温度过高、温度过低、湿度过高、湿度过低的异常状态,好让用户一眼看出发生了哪一个具体的异常情况7。连接图如下:图2.11 声报警电路图2.12 光报警电路第三章系统软件设计3.1 系统主程序设计方法本系统使用的是

30、Keil 软件,它是C51系列兼容单片机C语言软件开发系统,能够应用通俗易懂的高级C语言对单片机进展软件开发。当然,在写程序之前必须要对系统的电路有足够的了解,各个接口,还有系统各个芯片或者模块的时序,在编程过程中都要对其遵守,那样才能将你所预设的功能付诸实现。在搞清楚了硬件的特性之后,根据该特性首先要做的就是画出流程图,组织好每个模块的处理先后顺序。另外,也要善于利用软件去替代局部硬件做的事情,比方在此设计里,消除键盘按键抖动现象就使用了软件除抖,使得硬件电路更简洁,也降低了系统总体本钱。所有的程序,使用C51编程语言,在keil开发环境中编译和调试,整个程序利用了中断技术、数字滤波技术、系

31、数补偿技术以及其他先进技术。程序设计都分了模块,模块化的程序构造清晰,易于修改8。由以下主要模块组成:主程序模块、温湿度采集模块,报警模块、数据显示模块、按键模块和其他的附加模块。图3.1是该系统的主程序流图。开场初始化显示欢送界面调用读取实时温湿度子程序值显示有无按下设定键否进入设定子程序是是否超出设定值否输出报警是完毕图3.1 系统主程序流图3.2 LCD1602显示子程序首先要对LCD模块进展初始化,另外由于该器件是慢显器件,在对其进展操作前要先读忙标示,为低电平时操作才有效,这个读忙标示也可以用延时操作来替代,作用是一样的9。这些都可以放在 LCD_init(void) 里面去实现。根

32、据程序功能思路,结合硬件特性,得出下面程序流图:延时有无按键按下按键子程序有按键程序完成无读温湿度DHT11通信重启读取成功.否线性拟合数据是1602显示数据延时0.8s图3.2 LCD1602显示子程序流图下面给出LCD1602初始化代码:void LCD_Initial() E=0; LCD_Write(LCD_MAND,0*38); /8位数据端口,2行显示,5*7点阵 LCD_Write(LCD_MAND,0*38); LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR); /开启显示, 无光标 LCD_Write(LCD_MAND,LCD_CLEAR_SCRE

33、EN); /清屏 LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE); /AC递增, 画面不动将字符输出到液晶显示局部代码:字号改成小四void Print(unsigned char *str) while(*str!=0) LCD_Write(LCD_DATA,*str); str+; 3.3 DHT11温湿度采集子程序下面给出这局部程序的流图:主机发出开场信号主机设置为输入模式DHT11是否响应跳出否是等待80us高电平完毕接收数据拉低总线,延时50us释放总线图3.3 DHT11温度采集子程序流图下面给出温湿度测量关键程序:char s_measure(unsign

34、ed char *p_value, unsigned char *p_checksum, unsigned char mode) / 进展温度或者湿度转换,由参数mode决定转换容 unsigned error=0;unsigned int i;s_transstart(); /启动传输switch(mode) /选择发送命令 case TEMP : error+=s_write_byte(MEASURE_TEMP); break; /测量温度 case HUMI : error+=s_write_byte(MEASURE_HUMI); break; /测量湿度 default : break

35、; for (i=0;i65535;i+) if(DATA=0) break; /等待测量完毕if(DATA) error+=1; / 如果长时间数据线没有拉低,说明测量错误*(p_value) =s_read_byte(ACK); /读第一个字节,高字节 (MSB)*(p_value+1)=s_read_byte(ACK); /读第二个字节,低字节 (LSB)*p_checksum =s_read_byte(noACK); /read CRC校验码return error; / 假设error=1 通讯错误第四章系统测试4.1 软件测试本设计的程序局部采用Keil C51编写,它是在标准C语

36、言根底上开展起来的针对51单片机的实用高级编程语言。首先根据设计的主要思想在Keil 界面上把完整的程序输入,在保证语法、格式正确的情况下对源程序进展编译,生成可执行的目标代码。当然这个过程中遇到了很多困难,比方一些变量没定义好,或者有其他的一些语法错误,在进展检查调试后,顺利通过。下列图是Keil 程序界面的截图:图4.1 Keil程序界面4.1.1 软件测试总结在经过屡次调试修改之后,所有程序都通过编译,并生成了需要的目标执行文件。在这个过程中,我发现很多由于个人疏忽导致的细节问题使得很屡次挣扎在程序编译频繁出错的边缘。并且通过细心调试,请教同学和教师,最后一一解决了这些问题,也收获了不少

37、。4.2 硬件测试4.2.1 系统硬件仿真在硬件实现方面,利用Proteus软件实现电路图的连接、程序写入以及功能仿真。下列图是系统完整电路:图4.2 系统整体电路在实现好软件局部的撰写并且编译后没有报错之后,在Proteus环境里把Keil生成的可执行文件写入到单片机里面,点击仿真按钮,系统开场工作。在初始阶段,默认给定SHT11的值如图。图4.3 SHT11初始值此时液晶显示如图4.4。图4.4 液晶显示数据由于本系统默认设置的温度上限为40摄氏度,对SHT11把温度调至41度的时候,液显如图4.5,蜂鸣器开场发声,温度过高的LED指示灯也被点亮,如图4.6。图4.5 温度过高时液显容图4

38、.6 光报警电路同样,对该系统传感器的湿度分别调到80%以上、30%以下,相应报警电路都被激活,因此在硬件测试下获得了与预期一样的功能。另外,对按键的测试也通过,因此在实际应用中可以自行通过按键根据作物的特点改变报警的阀值,科学的进展动态监测。硬件测试总结在电路仿真调试的过程中,同样遇到很多困难。从开场的Proteus仿真软件的学习,到对它操作的熟悉,后来连好电路图之后,把前面生成的可执行文件写入开场仿真,发现按键没反响,经过观察代码才发现原来在软件局部定义的按键端口和电路图的连接端口不吻合,修改正来便解决了这个问题。另外,在通过对传感器调节输入数据,在温湿度超过限度的时候,蜂鸣器不报警,通过

39、观察电路才知道报警电路与单片机连接的端口处电平取反了。这样的问题遇到了很多,在一次又一次的修改后,终于完成了硬件局部的仿真,实现了所有预设功能。4.3 实物测试4.3.1 实物系统概况在购置元器件后,按照Proteus软件中的仿真电路,做成如下所示的实物。图4.7 实物正面图4.8 实物反面4.3.2 实物报警测试由正面图所示可知上电后该装置运行正常,下面来测试它的报警功能,由于夏天手很潮湿,用手指放在SHT11传感器上,可以看见LCD1602显示的温度值略微上升,湿度值大幅上升,直到超过系统预设湿度上限值87%,湿度过高的LED警示灯点亮,同时蜂鸣器鸣响报警。如图4.9所示。图4.9 湿度过

40、高报警同理,用吹风机开热风吹传感器,蜂鸣器报警,温度过高以及湿度过低的LED警示灯同时亮起。4.3.3 实物按键测试下面测试装置的按键电路。按下SET键,出现温度上限值的设置界面默认为40度,如图4.10所示。通过按下DOWN键将上限调至28,按下OK键确认,回到温湿度显示界面,继续将手放在传感器上,此时温度过低和湿度过高的LED警示灯同时亮起,蜂鸣器响,如图4.11 。图4.10 设置界面图4.11 重设温度上限后报警4.3.4 实物测试总结在进展上述测试后,发现预设的功能与Proteus软件仿真的结果完全一致,到达了所有的预期效果。结语这项设计在单片机技术、传感器技术、C语言编程等科学知识

41、完成了基于单片机控制的大棚温湿度自动检测系统的设计,实现了环境温湿度自动实时检测显示,并且在温湿度过限发出警报。由于单片机的经济和开发本钱低廉,操作简便,在农业自动控制领域具有很强的实用性。下面对本设计的特点做一个总结:1. 用传感器把单片机结合起来,从而实现温湿度数据的自动采集读取。2. 利用了LCD1602液晶显示,直观地观察大棚温湿度的数据。3. 具有报警模块,通过按键自行设定温湿度上下限,给用户提供及时的环境因子突变反响。当然,在这些特点之外,这个设计还有一些缺点,在器件、系统上面需要做进一步的优化,从而提高整个系统的准确度和降低功耗。当然,这个系统还可以做一定的拓展。比方,为了让该该

42、系统得到的测量结果在计算机上显示,可以利用单片机的串口和RS-232总线通信协议把采集的数据传送到主控机,这样就可以利用计算机进展数据的保存和加工处理。另外,如果接入无线收发模块,还可以把这个装置适用于比拟偏远不方便到达的地方,此时还可以在端口扩展针对温湿度过限之后的控制模块,温度过高的时候启动降温系统,翻开排风扇等;过低的时候启动加热器;湿度过高或者过低都相应启动除湿器或风干机,直到相应指标到达设定的允许的围,这样可以实现无人管理种植,又进一步节省了人力和财力。参考文献1 王明喜,世茂,王红彬,志鑫,海涛,鑫,胡博,雪冰,晓蒙. 大棚型日光温室光照、温度及湿度等性能的初步研究J. 农业工程技

43、术(温室园艺),2021,05:19-21.2 褚福强,董学仁. 单片机的网络接入技术研究J. 仪器仪表用户,2006,05:4-5.3 承帅. 蒸化工艺中温湿度测量装置的研制D.大学,2021.4 英俊. 基于单片机的温湿度监测和报警系统设计J. 石油化工学院学报,2021,04:42-46.5 林嘉. 基于89S52的LCD1602程序设计J. 电脑知识与技术,2021,26:6376-6378.6 迎辉. 单片微型计算机键盘接口设计J. 信息技术,2004,07:68-69+91.7 毓.基于单片机的蔬菜大棚温度控制系统D.:中国海洋大学学位论文.2021:27-28 芝芸.温室智能监控

44、系统D.:科技大学学位论文,2021:1-39 庆阳. 单片机实践与应用. : 清华大学, 200210 光伟. 基于单片机的温室温湿度监测系统设计与实现D.燕山大学,2021.11 宏丽温室环境智能监测与控制系统设计D.:理工大学学位论文,2007:1-4 12 廖丽媛.基于应变式扭矩传感器的测量系统的设计D. : 东华大学, 202113 九庆. 温室环境工程技术. : 东北林业大学, 200214 友德, 志英, 涂时亮. 单片微型机原理应用与实验. : 复旦大学, 200315 庆阳. 单片机实践与应用. : 清华大学, 200216 杜深慧. 温湿度检测装置的设计与实现. : 机械工业, 200417 Li Hai-*ia, Zeng Jie-Hui, The design of environmental temperat

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号