基于某单片机地农业大棚温湿度监测系统设计

上传人:仙*** 文档编号:83331348 上传时间:2022-05-01 格式:DOC 页数:46 大小:798KB
返回 下载 相关 举报
基于某单片机地农业大棚温湿度监测系统设计_第1页
第1页 / 共46页
基于某单片机地农业大棚温湿度监测系统设计_第2页
第2页 / 共46页
基于某单片机地农业大棚温湿度监测系统设计_第3页
第3页 / 共46页
点击查看更多>>
资源描述
word本科毕业论文设计论文题目:基于单片机的农业大棚温湿度监测系统设计:学号:班级:年级:专业:学院:指导教师:完成时间:37 / 46 作者声明本毕业论文设计是在导师的指导下由本人独立撰写完成的,没有剽窃、抄袭、造假等违反道德、学术规和其他侵权行为。对本论文设计的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。因本毕业论文设计引起的法律结果完全由本人承当。毕业论文设计成果归武昌工学院所有。特此声明。 作者专业:作者学号: 作者签名: 2017年3月26日基于单片机的农业大棚温湿度监测系统设计XXXThe Design of Agricultural Greenhouse Temperature And Humidity Monitoring System Based on Single Chip MicroputerX, X X 2017年03月26日摘 要在大棚种植术里,温湿度是影响作物产量的关键因素,传统的温湿度测量采集方式具有精度不高,操作费时费力的问题,不能够动态监测,很容易造成由于环境因素突变而造成的减产甚至无产的惨痛损失。本设计以AT89S52单片机为控制核心,用SHT11数字式温湿度传感器作为数据采集,并把数据显示在LCD显示屏上,能任意时刻观测到大棚部的实时环境参量;用户可自己设定温湿度上下限,当系统检测到的温湿度在安全阀值之外立即通过报警电路报警。这样设计出来的系统具有实时性、精度高、稳定性、低能耗、低本钱、操作简单等诸多优点,可广泛应用与大棚种植的环境之中。 关键词:AT89C52单片机;SHT11;大棚;温湿度;传感器AbstractTemperature and humidity in the greenhouse planting technique, is the key factor that influence the yield of crops, traditional way of temperature and humidity measurement collection has the accuracy is not high, laborious operation problem, dynamic monitoring, will not be able to easily caused by environmental factors mutations caused by production and even dangerous painful losses.This design by AT89S52 single chip microputer as the control core, using digital temperature and humidity sensor SHT11 as data acquisition, and data display on the LCD screen, can be observed at any time inside the greenhouse environment parameters in real time;Users can set temperature and humidity on the lower limit, when the system detects the temperature and humidity in the relief valve values through the alarm circuit alarm immediately.This designed system with real-time, high precision, stability, low energy consumption, low cost, simple operation, and many other advantages, can be widely used and greenhouse cultivation environment.Keywords:AT89C52 Single Chip Microputer; SHT11; Greenhouses; Temperature And Humidity; Sensor 目 录1 引论1选题背景1国外研究现状1系统主要设计容22 系统硬件设计3系统性能概述32.2 单片机模块32.3 单片机最小系统52.4 传感器模块6显示模块8按键电路122.7 报警电路133 系统软件设计153.1 系统主程序设计方法153.2 LCD1602显示子程序153.3 DHT11温湿度采集子程序164 系统测试184.1 软件测试184.2 硬件测试18结语22致 谢23主要参考文献24附录251 引 论近期,我国温室的总种植面积位于世界前列,产业的开展迅猛。但是,我国的温室自动控制技术远远跟不上温室数量的增长,农业生产还在使用大量的人力劳动,不仅劳累,而且因为无法对温室环境进展准确监测,不仅浪费了大量的资源,还使作物产量受到了影响,降低了收入。同现代化农业兴旺的国家相比,我国在这一方面还是有比拟大的差距,特别在是对温室生产环境的各个因素的自动监测与控制方面。本课题目的在于研究一个基于单片机为主控芯片下的大棚温湿度自动监测系统,由于单片机与相关附加部件的经济性,使得其能广泛应用于广阔农民之中,从而通过对大棚温湿度的科学量化实时监测调整对作物的环境从而提高农业产量,造福广阔农民,其实用性使得这个研究很有必要。 上个世纪70年代开始,国外就利用当时开展的模拟技术对温室环境因子控制开展研究,告别了之前人工测量的落后时代,随着研究的深入和进步,分布式控制系统便进一步在此领域开展起来了。随着世界各国的温室自动控制技术的迅猛开展,如以色列、荷兰、日本美国等西方兴旺国家,都实现了根据所植入和采集到的温室生物的特点与要求,对温室所处的多方面因素进展自动控制,包括温度、湿度、光照强度、水分、气体浓度、肥料等各个方面。在荷兰,其玻璃温室已经可以通过计算机控制,实行全自动无人化控制生产;在日本,其温室自动控制在温室生产的各项作业中都逐步实现了无人化、全自动化。通过热电技术的使用,荷兰实现了准确控制成熟期的水果和蔬菜,鲜花和其他植物的开花期,满足在各种节日的时间需求的人;在英国,伦敦大学农业学院研制出来的温室自动控制技术,可以对超过50公里的温室环境进展监控,包括温度和湿度,光照强度,气体浓度和水等环境因素。比国外大概晚十年,也就是在80年代之后,中国相关科研人员不断学习西方兴旺国家在温室控制领域取得的成果,并且积累总结出自身经验,化为适应中国本土的技术,在研究初始阶段,只能对单一环境因子实现自动控制,但在随后快速开展的微机技术、传感技术等高新技术的驱动下,自动控制的领域有了翻天覆地的变化,通过温室生产,可利用计算机对生物生长所需的局部或者全部的环境因素进展自动控制,使农业生产方式有了巨大的改变,生产信息化、工厂化等已经成为了世界上农业广泛生产的新途径。控制单元AT89S52复位电路1602显示电路温湿度传感器报警电路键盘输入电源电路图1.1 系统框图利用AT89S52单片机控制单元的设计,传感器采用SHT11数字温湿度传感器,1602A双液晶显示器实时显示温度和湿度,蜂鸣器报警电路,并用三极管驱动,LED报警信息电路。在单片机中,ATMEL公司生产的C51系列单片机具有本钱低廉、运行稳定、开发周期短、易操作使用等优点,但是每次写程序的时候都要进展拔插,不仅在调试的时候比拟繁琐,而且对芯片也会造成一定的损害;而S系列的AT89S52单片机弥补了这一缺陷,不仅支持在线ISP编程,免除繁琐的编程拔插,还比89C51 多了一倍的存,因此可以支持更大的程序,这样有利于该系统日后的功能拓展。在数据采集模块上面,为了使得整体电路更加精简,减少繁杂的外围电路,A/D转换电路,使用集成式的数字式温湿度传感器SHT11。同样的道理,1602液晶显示器可以显示双行字符,满足了设计的显示要求。2 系统硬件设计作为一个大棚温湿度监测系统,其核心任务是对棚环境进展自动测量。该系统上电初始化后,通过SHT11感应并检测大棚的温湿度值,传送给AT89S52核心处理单元,此时处理器调出部设定好的温湿度上下限,据此比照判断对应数据是否异常,然后做出报警与否的反响;确定是否异常超过预设的时间,如果超过预定时间,异常信号从报警电路输出;然后继续确定异常处理,如果解决了,然后就会解除报警。这样一来,通过单片机的核心处理控制功能来采集实时环境信息,让用户可以实时高效地获取大棚部的环境状态,从而能够与时实施管理。2.2 单片机模块单片机作为一种微型计算机,广泛应用在工业自动化、自动控制、智能仪器仪表等领域,具有体积小、本钱低的特性,功能齐全,简单方便,开展迅速,嵌入容易。本设计采用AT89S52单片机,单片机是一种低功耗,高性能CMOS8位微控制器,有8K的系统可编程闪存。它兼容MCS-51系列的引脚,适用于所有标准80C51指令集。从而使该器件进展编程,因此它能够在进展程序烧录是不进展屡次拔插,可防止不必要的繁琐程序以与对装置的损耗甚至损坏。2.2.1 AT89S52 主要功能概述AT89s52提供以下标准功能:8K字节的Flash闪速存储器,256字节部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端口,8位,具有部上拉电阻。P2口:P2口是一个带有部上拉电阻的8位双向I/O口。P3口:端口P3是具有部上拉电阻的8位双向I/O口。P3口依然和AT89C51一样提供了它的第二功能。RST:复位输入端口,复位方式是当其工作是在RST引脚接入持续时间长达两个机器周期以上高电平。ALE/:地址锁存允许。:片外程序存储器的读选通信号。/VPP:外部访问允许端口。第二功能,即VPP功能,在对片Flash进展编程的时候,要在这个引脚上接入12V 的编程电压。XTAL1:片振荡器反相放大器和部时钟发生器的输入端。XTAL2:片振荡器反相放大器的输出端。2.3 单片机最小系统单片机最小系统就是单片机能够运行程序,正常工作最简单电路系统,是保证单片机的正常启动和开始工作的必须电路,组成这局部的东西缺一不可,单片机最小系统应该有单片机、晶振电路、复位电路。2.3.1 单片机在上节已经作了阐述。2.3.2 晶振电路在Proteus仿真环境里如图2.2 。图2.2 单片机振荡电路系统在执行程序的时候需要一个稳定的时钟信号,一切的指令都需要这样的时钟信号才能够有条不紊地执行。单片机系统所需的时钟信号由晶振提供,并且其运行速度与频率的上下息息相关,呈现出正比的规律,单片机产生的频率越高其运行速度就越快,反之如此越慢。在一般环境下,晶体振荡器的频率五十的绝对精度可以达到百万,足够一般使用,先进的水晶会更准确。STC89S52采用11.0592MHz的晶振作为振动源,单片机部含振荡器电路,所以震荡电路的连接跟8051单片机一样,所连接的电容容量为22pF即可。如同计算机,单片机在执行程序的时候可能会遇到各种各样的意外情况而使系统瘫痪或者软件跑飞,因此就需要一个复位机制。就好比计算机的重启局部,单片机复位电路使得其具有恢复正常运作的功能,当按下复位按键的时候,部的程序会重新从头开始执行。图2.3 复位电路单片机的复位电路由两种方式,分别是上电自动复位和按键复位,本设计采用的是上电自动复位电路,实现原理如图2.3。2.4 传感器模块2.4.1 SHT11简介目前在电容式温湿度传感器的开展中,以盛世瑞恩公司制造的SHTXX系列的产品占主要份额,即集成的单片智能数字化温湿度传感器。这种产品在工业CMOS过程中采用了微加工技术,从而使其有长期的稳定性和比拟高的可靠性。它的外观和引脚如图2.4所示。图2.4 SHT11外观和引脚。2.4.2 SHT11端口介绍VDD :电源引脚。SHT11的额定电压为5V。一般在3.3V就可以正常工作,上电后电源引脚可以接上一个100nF 的电容。SHT11的串行接口优化传感器读出和有效的电力消耗。传感器可以连接到一个I2C总线,不干扰其他设备连接到总线,控制器必须在协议之间进展切换。GND:地。SCK:串行时钟输入。DATA:串行数据引脚。这个传感器的三态串行数据引脚用来收发数据。传感器发送命令到串行数据时钟SCK的有效前沿,并且必须保持稳定在较高的水平时,SCK,SCK边缘的数据值可能倒台后发生改变。为了保持安全通讯数据有效,应当延长在TSU上升和THO下降沿的SCK后,分别见图2.5。图2.5 SHT11收发数据时序用于读取数据传感器、数据SCK已经是低电平,后是有效的电平SCK仍然有效,直到下一个下降沿到来。为了防止信号争用单片机必须唯一用低电平驱动数据位,所以通常在该引脚外部接上10k大小的上拉电阻。2.4.3 SHT11典型应用电路图2.6 SHT11典型应用电路2.5.1 LCD1602概述本系统选择的字符型显示器是一种用 5*7 点阵图形显示字符的显示器,根据可以显示的字数多少可以分为 2 行 20 字、2 行 16 字、1 行 16 字等。通常我们所用的是 2 行 16 字,也就是本系统采用的 LCD1602 模块。 液晶显示器具有体积小,功耗低,微薄而轻,使用方便,显示容丰富等优点,已应用于许多低功率器件。这个装置的引用使得这些电子设备的人机界面变的越来越形象和直观。图 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 条引脚线带背光两种接口形式,其中 16 条引脚的多出了背光电源线 VCC(15 脚)和地线 GND(16 脚),各引脚定义如表 2.1 所示。 表2.1 LCD1602 引脚功能定义编号符号引脚说明编号符号引脚说明1VSS电源地9DB2Data2VDD电源正极1DB3Data3VL液晶显示偏压11DB4Data4RS数据/命令选择12DB5Data5R/W读/写选择13DB6Data6E使能信号14DB7Data7DB0数据15BLA背光源正极8DB1数据16BLK背光源负极2.5.4 命令格式与功能说明 (1) 清屏。下面是命令格式:表2.2 清屏命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000000001这条命令将屏幕显示去除,光标归位。 (2) 返回。表2.3 返回命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000000001X该指令将DDRAM和显示RAM的地址置0,将显示返回到原来的位置。 (3) 输入方式设置。命令格式如下:表2.4 输入方式设置命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB000000001I/DS这段指令的功能室设置光标的移动方向,并且指定是不是将整体显示移动。I/D=1 增量方式I/D=0 减量方式S=0 移位S=1 不移位 (4) 显示开关控制指令。表2.5 显示开关指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000001DCB功能:控制整体显示器的开/关、光标的开/关、光标所处字符闪烁与否。D=0 显示器关; D=1 显示器开;C=0 光标关; C=1 光标开;B=0 字符不闪烁;B=1 字符闪烁。(5) 光标移位指令。表2.6 光标移位指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000001S/CR/LXX功能:让光标移位或者整体显示移位。S/C=0 光标移位; S/C=1 显示移位;R/L=0 向左移位; R/L=1 向右移位。 (6) 功能设置指令。表2.7 功能设置指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB000001DLNFXX功能:设置数据总线位数和显示的行数与其字型。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) 读忙信号与地址计数器。表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要读出的数据D7D0按键电路要完成的任务有:判别是否有按键按下,如果有就进入下一步工作;然后识别哪一个键被按下,求出相应的键值;依据键值找到相应的处理程序入口。在单片机系统中我们常用的键盘是按键式键盘,那个按键实际上就是一个开关。图2.9是按键按下时行线电压输出波形图。图2.9 按键抖动现象由图可知按键在开闭的一瞬间都有抖动期,根本上在5-10ms左右 ,在键盘被按下的稳定期,电平状态呈现出低电平。因此判定按键是否按下实质上就是检测行线输出的电压时低电平还是高电平。假如为高电平,如此按键断开;假如低电平,按键闭合。但是由于其机械特性导致的抖动现象,我们必须消除按键的抖动从而消除对按键闭合与否的判断障碍,提高判别的准确性。消去按键抖动的方式有两种:软件延迟和采用专门的键盘接口芯片。考虑到使用系统的本钱和简单消除抖动的角度,我们采用的是软件延时的设计方法。利用软件延时的方法消除按键抖动的思想:当检测到按键按下时,行线电平状态为低电平,此时执行一段延时为10ms 的子程序,再确认电平是否为低电平,如果此时真有按键按下,如此应仍为低电平。反之,当按键松开是,该按键所在的行线跳变为高电平,同样执行一段延时10ms 的延时子程序后,再看是不是高电平,如果为高电平,如此表示按键已经释放。这样的操作可以达到消除两个抖动期的影响,大大提高可靠性。本设计采用四个机械按键,接在单片机的P3口,四个按键满足对系统温湿度上下限值的设定。连接方式如图2.10:图2.10 键盘电路SET 键的作用是选择调整项目,即温度上限、温度下限、湿度上限、湿度下限四个可选,OK是确定键,UP和DOWN分别是加和减的操作。通过这几个按键和对该装置设定允许的温湿度上下限,超过该设定值就会启动报警电路发出警报。2.7 报警电路为了让电路在检测到环境温湿度超过预设值的时候做出反响,本设计采用了声光报警电路,蜂鸣器发出声音提醒大棚农户,通过8050晶体管来驱动蜂鸣器;四个LED灯分别对应温度过高、温度过低、湿度过高、湿度过低的异常状态,好让用户一眼看出发生了哪一个具体的异常情况。连接图如下:图2.11 声报警电路图2.12 光报警电路3 系统软件设计3.1 系统主程序设计方法本系统使用的是Keil 软件,它是C51系列兼容单片机C语言软件开发系统,能够应用通俗易懂的高级C语言对单片机进展软件开发。当然,在写程序之前必须要对系统的电路有足够的了解,各个接口,还有系统各个芯片或者模块的时序,在编程过程中都要对其遵守,那样才能将你所预设的功能付诸实现。在搞清楚了硬件的特性之后,根据该特性首先要做的就是画出流程图,组织好每个模块的处理先后顺序。另外,也要善于利用软件去替代局部硬件做的事情,比如在此设计里,消除键盘按键抖动现象就使用了软件除抖,使得硬件电路更简洁,也降低了系统总体本钱。所有的程序,使用C51编程语言,在keil开发环境中编译和调试,整个程序利用了中断技术、数字滤波技术、系数补偿技术以与其他先进技术。程序设计都分了模块,模块化的程序结构清晰,易于修改。由以下主要模块组成:主程序模块、温湿度采集模块,报警模块、数据显示模块、按键模块和其他的附加模块。 LCD1602显示子程序首先要对LCD模块进展初始化,另外由于该器件是慢显器件,在对其进展操作前要先读忙标示,为低电平时操作才有效,这个读忙标示也可以用延时操作来替代,作用是一样的。这些都可以放在 LCD_init(void) 里面去实现。根据程序功能思路,结合硬件特性,得出下面程序流图:图3.1 系统主程序流图LCD1602初始化代码见附件3.3 DHT11温湿度采集子程序首先要对LCD模块进展初始化,另外由于该器件是慢显器件,在对其进展操作前要先读忙标示,为低电平时操作才有效,这个读忙标示也可以用延时操作来替代,作用是一样的。这些都可以放在 LCD_init(void) 里面去实现。根据程序功能思路,结合硬件特性,得出下面程序流图:图3.2 LCD1602显示子程序流图温湿度测量程序见附件。4 系统测试4.1 软件测试本设计的程序局部采用Keil C51编写,它是在标准C语言根底上开展起来的针对51单片机的实用高级编程语言。首先根据设计的主要思想在Keil 界面上把完整的程序输入,在保证语法、格式正确的情况下对源程序进展编译,生成可执行的目标代码。当然这个过程中遇到了很多困难,比如一些变量没定义好,或者有其他的一些语法错误,在进展检查调试后,顺利通过。如下图是Keil 程序界面的截图:图4.1 Keil程序界面在经过屡次调试修改之后,所有程序都通过编译,并生成了需要的目标执行文件。在这个过程中,我发现很多由于个人疏忽导致的细节问题使得很屡次挣扎在程序编译频繁出错的边缘。并且通过细心调试,请教同学和教师,最后一一解决了这些问题,也收获了不少。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.6 光报警电路同样,对该系统传感器的湿度分别调到80%以上、30%以下,相应报警电路都被激活,因此在硬件测试下获得了与预期一样的功能。另外,对按键的测试也通过,因此在实际应用中可以自行通过按键根据作物的特点改变报警的阀值,科学的进展动态监测。在电路仿真调试的过程中,同样遇到很多困难。从开始的Proteus仿真软件的学习,到对它操作的熟悉,后来连好电路图之后,把前面生成的可执行文件写入开始仿真,发现按键没反响,经过观察代码才发现原来在软件局部定义的按键端口和电路图的连接端口不吻合,修改正来便解决了这个问题。另外,在通过对传感器调节输入数据,在温湿度超过限度的时候,蜂鸣器不报警,通过观察电路才知道报警电路与单片机连接的端口处电平取反了。这样的问题遇到了很多,在一次又一次的修改后,终于完成了硬件局部的仿真,实现了所有预设功能。结语这项设计在单片机技术、传感器技术、C语言编程等科学知识完成了基于单片机控制的大棚温湿度自动检测系统的设计,实现了环境温湿度自动实时检测显示,并且在温湿度过限发出警报。由于单片机的经济和开发本钱低廉,操作简便,在农业自动控制领域具有很强的实用性。致 谢这次的设计和论文是在各位教师的悉心指导下完成的。你们严肃的科学态度,严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。从课题的选择到项目的最终完成,你们都始终给予我细心的指导和不懈的支持。在此谨向教师们致以诚挚的谢意和崇高的敬意。感谢武昌工学院来对我的大力栽培;感谢大学所有的教师给予我谆谆教导,为我打下坚实的知识根底;同时还要感谢所有同学们。撰写论文也使我的知识体系也在不断地拓展和成熟,希望在未来的工作和生活过程中,亦能一直保持不断的学习,不断的完善自我,走向成熟。最后,希望在以后的学习和研究中能以更加优异的成绩来答谢所有关心和帮助过我的教师和同学!再次谢谢您们!主要参考文献1 王明喜,X世茂,王红彬,志鑫,海涛,鑫,博,雪冰,晓蒙. 大棚型日光温室光照、温度与湿度等性能的初步研究. 农业工程技术(温室园艺),2008,05:19-21.2 褚福强,董学仁. 单片机的网络接入技术研究. 仪器仪表用户,2006,05:4-5.3 承帅. 蒸化工艺中温湿度测量装置的研制.大学,2012.4 英俊. 基于单片机的温湿度监测和报警系统设计. 石油化工学院学报,2013,04:42-46.5 林嘉. 基于89S52的LCD1602程序设计. 电脑知识与技术,2012,26:6376-6378.6 迎辉. 单片微型计算机键盘接口设计. 信息技术,2004,07:68-69+91.7 韩毓.基于单片机的蔬菜大棚温度控制系统.:中国海洋大学学位论文.2009:27-28 芝芸.温室智能监控系统.:科技大学学位论文,2010:1-39 庆阳. 单片机实践与应用. : 清华大学, 200210 光伟. 基于单片机的温室温湿度监测系统设计与实现.燕山大学,2012.11 彭宏丽温室环境智能监测与控制系统设计.:理工大学学位论文,2007:1-412 廖丽媛.基于应变式扭矩传感器的测量系统的设计. : 东华大学, 201313 九庆. 温室环境工程技术. : 东北林业大学, 200214 友德, 志英, 涂时亮. 单片微型机原理应用与实验. : 复旦大学, 200315 庆阳. 单片机实践与应用. : 清华大学, 200216 杜深慧. 温湿度检测装置的设计与实现. : 机械工业, 200417 Li Hai-Xia, Zeng Jie-Hui, The design of environmental temperature and humidity remote monitoring system based on AT89S52 MCU, Applied Mechanics and Materials, v 496-500, p 1595-1602, 201418 Ding Libo, Wang Xuehui, Design of a web-based temperature and humidity monitoring systemC, 2011 2nd International Conference on Management Science and Electronic merce (AIMSEC), 2028-2030, 201119 Yong Huang, Design and Realization of Wireless Sensor Network for Vegetable Greenhouse Information AcquisitionC, 2010 6th International Conference on Wireless munications Networking and Mobile puting (Wi), 1-4, 201020 Wu Zi Yue, Zhang Shuai, Gao Ting, Design of temperature and humidity monitoring system for marine working platform C, Applied Mechanics and Materials, v 300-301, p 453-457, 2013.附录主函数程序void main() /主函数 k1=k2=k3=k4=1; temp_humi_cache0=4; /以下八行预设温湿度阀值temp_humi_cache1=0;temp_humi_cache2=0;temp_humi_cache3=7;temp_humi_cache4=8;temp_humi_cache5=7;temp_humi_cache6=3;temp_humi_cache7=0;temp_high=temp_humi_cache0*10+temp_humi_cache1;temp_low=temp_humi_cache2*10+temp_humi_cache3;humi_high=temp_humi_cache4*10+temp_humi_cache5;humi_low=temp_humi_cache6*10+temp_humi_cache7;LCD_Initial(); /液晶初始化GotoXY(0,0); /光标移位函数,第一个参数表示行,第二个表示列Print_slow(word1);GotoXY(0,1);Print_slow(word2);LCD_Write(LCD_MAND,LCD_CLEAR_SCREEN); /清屏GotoXY(0,0);Print_slow(word3);LCD_Write(LCD_MAND,LCD_CLEAR_SCREEN); /清屏while(1)key(); if(presskeynum=0) s_connectionreset(); /测量温湿度 error=0; /初始化error=0,即没有错误 error+=s_measure(unsigned char*)&temp_val.i,&checksum,TEMP); /温度测量 error+=s_measure(unsigned char*)&humi_val.i,&checksum,HUMI); /湿度测量 if(error!=0) s_connectionreset(); /如果发生错误,系统复位 else humi_val.f=(float)humi_val.i; /转换为浮点数 temp_val.f=(float)temp_val.i; /转换为浮点数 calc_sth10(&humi_val.f,&temp_val.f); /修正相对湿度与温度 temp=temp_val.f*10; humi=humi_val.f*10; GotoXY(0,0); /选择温度显示位置 Print(Temp: C); /5格空格 GotoXY(0,1); /选择湿度显示位置 Print(Humi: %); /5格空格 GotoXY(5,0); /设置温度显示位置 TEMP_data0=temp/1000+0; /温度百位 if (TEMP_data0=0x30) TEMP_data0=0x20;TEMP_data1=temp%1000/100+0; /温度十位 if (TEMP_data1=0x30 & TEMP_data0!=0x30) TEMP_data1=0x20; TEMP_data2=temp%100/10+0; /温度个位 TEMP_data3=0x2e; /小数点 TEMP_data4=temp%10+0; /温度小数点后第一位 TEMP_data5=0xdf; /显示温度符号 TEMP_data6=0; Print(TEMP_data); /输出温度 GotoXY(5,1); /设置湿度显示位置 HUMI_data0=humi/1000+0; /湿度百位 if (HUMI_data0=0x30) HUMI_data0=0x20; HUMI_data1=humi%1000/100+0; /湿度十位 HUMI_data2=humi%100/10+0; /湿度个位 HUMI_data3=. ; /小数点 HUMI_data4=humi%10+0; /湿度小数点后第一位 HUMI_data5=0; Print(HUMI_data); /输出湿度 if (temp/10)temp_high) led2=0; else led2=1; if (humi/10)humi_high) led4=0; else led4=1; if (temp/10)temp_high)|(humi/10)humi_low) for (nn=0;nnhumi_high) for (nn=0;nn10;nn+) beep=0; delay(1); beep=1; delay(1); if(presskeynum=1) /设定温度上限时显示的容 set_temp0=temp_high/10+0x30; set_temp1=temp_high%10+0x30; set_temp2=0xdf; set_temp3=C; set_temp4=0; GotoXY (0,0); Print(SET TEMP HIGH:); GotoXY (0,1); Print(set_temp); if(presskeynum=2) /设定温度下限时显示的容 set_temp0=temp_low/10+0x30; set_temp1=temp_low%10+0x30; set_temp2=0xdf; set_temp3=C; set_temp4=0; GotoXY (0,0); Print(SET TEMP LOW:); GotoXY (0,1); Print(set_temp); if(presskeynum=3) /设定湿度上限时显示的容 set_humi0=humi_high/10+0x30; set_humi1=humi_high%10+0x30; set_humi2=%; set_humi3=0; GotoXY (0,0); Print(SET HUMI HIGH:); GotoXY (0,1); Print(set_humi); if(presskeynum=4) /设定湿度下限时显示的容 set_humi0=humi_low/10+0x30; set_humi1=humi_low%10+0x30; set_humi2=%; set_humi3=0; GotoXY (0,0); Print(SET HUMI LOW:); GotoXY (0,1); Print(set_humi);
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!