基于单片机的模拟智能灌溉控制系统毕业论文(22页).doc
-基于单片机的模拟智能灌溉控制系统毕业论文-第 16 页基于单片机的模拟智能灌溉控制系统摘 要随着农业生产水平的不断发展以及全球水资源的日趋紧张,世界各国都在积极探索行之有效的节水途径和措施。智能灌溉控制系统就是为了解决水资源不足、提高灌溉效率而发展起来的。本文研究的单片机智能灌溉控制系统,是对土壤的温湿度进行实时监控,参考实际温度值设定适宜的湿度下限值,并按照设定的湿度值进行相应的灌溉。 该智能灌溉控制系统以STC89C52单片机为核心,主要由温湿度传感器DHT11模块、按键输入模块、显示模块、水泵模块等组成;软件选用C语言编程。该系统的功能是:根据土壤湿度传感器检测到的土壤湿度,若检测到的土壤湿度值低于系统所设定的最低湿度值,系统则自动启动系统,进行灌溉。通过对硬件实物的测试,系统能够比较成功的实现目标功能。【关键词】单片机;传感器;LED显示;水泵;灌溉Simulator smart irrigation control system based on single chip microcomputer AbstractAs the level of agricultural production and the continuous development of global shortage of water resources, countries in the world are actively exploring effective ways and measures for water conservation. Intelligent irrigation control system in order to solve the problem of water resources,improve the efficiency of irrigation and developed. This paper studies theintelligent irrigation control system, temperature and humidity in the soil was monitored in real time, refer to the actual temperature value setting and humidity limit appropriate value, according to the set humidity value for the corresponding irrigation.The intelligent irrigation control system based on STC89C52 single chip microcomputer as the core, mainly by the temperature and humidity sensor DHT11 module, key input module, display module, pump module; softwareused C language programming. The function of this system is: according to thesoil moisture, soil moisture sensor to detect soil humidity, if the detected valueis lower than the lowest humidity system setting, automatic starting system,irrigation. By physical testing, system can realize the function of relatively successful.【Key words】 Single-chip Microcomputer;Sensor;LED Display;Water Pump; Lrrigation目录1 绪论11.1课题研究背景11.2课题研究的目的和意义11.3 国内外现状21.3.1国内研究现状21.3.2国外研究现状21.4 本文主要工作32 系统总体设计42.1系统功能要求42.2系统总体设计方案43 系统硬件设计53.1 硬件电路总原理图53.2 STC89C51单片机的硬件结构53.2.1单片机的结构及信号引脚63.3 电源供电模块73.4 单片机控制模块83.4.1单片机的最小系统83.4.2 单片机控制的电路设计83.5湿度采集模块93.5.1温湿度传感器DHT11的原理93.6 液晶显示模块103.6.1 LCD1602液晶模块简介103.6.2 LCD1602的引脚及电路设计113.7 按键输入模块123.8 水泵增湿模块124 系统软件设计134.1程序设计134.1.1主程序流程及相关说明134.2主程序代码145 测试结果与分析175.1 测试环境175.2 测试结果176 调试与使用说明207 结论21参考文献22致 谢23附录1 元器件清单24附录2 基于STC89C52单片机的智能灌溉控制系统PCB图25附录3 DHT11模块代码26附录4 液晶显示模块代码281 绪论1.1 课题研究背景水资源是人类生产生活最关键的自然资本,亦是贯穿社会发展和国民经济的最首要的基础资源。但我国当今水资源存在着两个方面的主要问题:第一个问题是水资源贫乏。虽然我国水资源的总量居全球第六位,可人均占有量却只有2500立方米,仅仅只达到了世界人均水量的四分之一,是全世界人均水资源最贫乏的国家之一。第二个问题是水资源的严重污染和浪费。就全中国而言,我们对水资源的利用率仅为45%,而那些水资源利用率高的国家已经达到了70%-80%,因此,提高水资源的利用率,对于解决我国的农业灌溉用水和缓解水资源紧缺非常重要1。经过几十年的快速发展,我国的节水智能灌溉技术初步形成了其技术体系,并且在某些方面已经达到或接近了国际先进水平,但由于受到我国经济发展水平及科研体制的限制,我国的智能控制灌溉技术与一些发达国家仍然存在着相当大的差距。随着我国水资源供需矛盾的日益加剧,农业用水分配额减少的问题势必日益突出,同时为了缓解我国水资源短缺对我国农业发展造成的压力,如何快速发展我国的节水智能控制灌溉技术及其配套设施,从而缓解我国农业用水压力已经成为一个不容忽视的问题1。 1.2 课题研究的目的和意义农业是人类社会赖以生存的最古老也是最重要的行业,农业的发展从长远来打算主要存在着两个方面的问题。一个是水资源的问题、另一个是科技发展方面的问题。而现阶段我国包括灌溉用水和降水在内的农田利用率很低,单位立方水生产粮食的能力大约为0.84kg,而以色列等一些发达国家大多数都在2kg以上,差距很大。为了提高灌溉水的利用率,为了保证全中国人口的粮食安全,使单位立方水生产粮食的能力得到提高,依靠传统的灌溉方式是很难达到的,必须从高新技术入手,在管理上下功夫,从过去的“浇地”思想观念转变为“浇植物”的思想观念。做到作物生长需要多少水,灌溉系统就能及时而准确地提供多少水。要实现这一目标,只有发展先进的灌溉系统,使灌溉过程达到自动控制才有可能。因此实现灌溉系统的智能控制,对节水、提高灌溉水的利用率以及对我国的粮食安全将起到极为重要的作用,具有重要的实现意义3。1.3 国内外现状1.3.1国内研究现状我国一直以来都非常重视灌溉设备的研制,但由于自主开发程度低,且有影响的成果较少,所以我国的灌溉设备大多数都是通过引进国外的成果,可以说我国对于智能灌溉控制技术的研制真正开始于“九五”期间。目前我国在智能灌溉控制系统方面还处于研制、试用阶段,能真正投入应用,并且应用广泛的智能灌溉控制器还不多见5。 节水农业的核心就是节约用水和提高农业用水率,是现代化农业的重要内涵,其核心是在有限水资源的条件下,通过采用先进的工程技术、适宜的农业技术和用水管理等综合技术措施,充分提高农业用水利用率和水的生产效率及效益,保证农业持续稳定发展。面对World Trade Organization的挑战,节水农业更应该赋予其新的内涵,其内涵应扩展为节水、高产、高效、优质的农业5。 要发展节水农业最基本的工作就是要有先进的节水灌溉技术,适当的技术是节水农业发展的前提条件,研究和开发节水灌溉技术,对提高节水农业的效益有很大的帮助。因此,我们非常有必要对现状节水灌溉技术,节水的水平以及技术的适应性,发展现状及存在问题做认真分析,为真正实现提高农业用水效率和水的生产效率打好基础5。 结合我国各地区特点,认为适宜各地区推广应用的节水农业技术主要有,渠道防渗技术、低压管道输水技术、地面灌水技术、雨水利用技术、农业节水配套技术、劣质水利用技术及农业节水管理等技术5。1.3.2国外研究现状西方的一些先进国家,运用先进的电子技术、计算机和控制技术,在节水灌溉技术方面起步较早,并日趋成熟。这些国家从最早的水力控制、机械控制,到后来的机械电子混合协调模式控制,到当前应用广泛的计算机控制、模糊控制和神经网络控制等,控制精度和智能化程度越来越高,可靠性越来越好,操作也越来越简单5。 在美国,早在1984年,Benami和Offen公司就开发了一套节水灌溉控制器,通过监测土壤水分来确定是否打开灌水阀门,Phene和Howell分别在灌溉系统的控制中使用了土壤湿度传感器,通过土壤水分传感器把湿度反馈给控制系统,根据传感器获得的数据决定是否灌溉,是作物根部总跟保持一定的湿度5。 加拿大、澳大利亚和韩国等国家和地区都有发开成功并形成系列的灌溉控制器产品,其中比较有代表性的如澳大利亚的HARDIE IR-RGATION公司的灌溉控制器,已形成了MICRO-MASTER、RAINJET等多个系列几十种型号的产品5。1.4本文主要工作经过对大量关于智能灌溉系统、单片机、传感器等文献的学习与研究,本文对基于单片机的智能灌溉控制系统的设计作出了较为详细的介绍,并且还做出了硬件实物,经操作测试,符合目标要求 。本论文的内容安排如下:第一章,主要介绍了智能灌溉控制系统的研究背景、目的与意义以及国内外智能灌溉系统的发展现状。对整个论文的书写以及毕业设计的方向起引导作用。第二章,对整个系统设计做了一个规划。系统需要实现什么样的功能?怎样设计才能实现这样的功能?第三章,对整个灌溉系统的硬件部分进行一个设计,先介绍了系统工作的总原理、总电路,然后再是一一对每个模块进行介绍,将每个模块的电路设计、功能以及一些引脚的特性加以介绍。第四章,对系统的软件部分进行设计,根据系统需要实现的功能以及各元件的特性,设计出一个总的程序流程图,然后再编写出能够实现此功能的源程序和主要功能模块的程序。第五章,对硬件实物进行测试并对测试的结果进行分析,并介绍一下测试的环境,然后附上各个阶段的状态图,并加以相应的解释。第六章,介绍程序的调试过程以及将编写好的程序录入到单片机中的过程。第七章,结论。介绍了在毕业设计的整个过程中,我所做的准备工作、碰到的困难、学到的东西以及自己的感想。最后,在论文的末尾,我介绍了整个设计过程中所参考的文献,对老师、同学、父母的致谢和一些程序、元件清单等的附录。2 系统总体设计2.1系统功能要求自动灌溉控制系统要实现的具体任务:1)本设计采用STC89C52RC单片机为灌溉系统的主控芯片,外接土壤温湿度传感器模块、电源模块、水泵驱动模块、LCD1602液晶显示模块和按键模块。2)使温湿度传感器对土壤的实际温湿度进行实时监测,并且把检测到的实际温湿度值的数字信号传送给单片机,单片机对其进行处理之后再将实际温湿度值显示在液晶显示屏上。3)使用者可以通过按键自行调节温湿度的下限值,当传感器检测到的湿度值低于设定湿度值的10%时,启动继电器,开启水泵,进行灌溉,当检测到的湿度值达到设定值时,继续灌溉直至湿度值高于设定值10%再停止灌溉。本系统的温度值仅仅是一个参考值,用户可以根据液晶显示屏上显示的实际温度来设定相应而合理的湿度下限值。4)本设计用一个绿色指示灯代表水泵模块,当指示灯亮起时,表示正在进行灌溉,当指示灯熄灭时,表示停止灌溉。2.2系统总体设计方案本设计利用STC89C52单片机设计了自动灌溉系统,利用温湿度传感器检测土壤的温湿度,将采集到的温湿度传送到单片机芯片,单片机根据温湿度控制是否进行灌溉,如果需要灌溉,那么单片机的一个引脚将置高电平,给水泵驱动芯片信号,打开水泵抽水,实现自动灌溉(即绿色指示灯亮起)。设计还配有一块LCD1602液晶显示器,用于显示土壤温湿度实际数值和设定用户温湿度值。系统还配有4个独立按键辅助设定温湿度值。自动灌溉系统方框图如图2-1所示。图2-1 自动灌溉系统整体设计框图3 系统硬件设计3.1 硬件电路总原理图系统硬件部分由单片机核心控制模块、温湿度采集模块、按键输入模块、水泵驱动模块、液晶显示模块、供电模块等组成,硬件系统的总电路图如图3-1所示。核心控制模块由STC89C52RC芯片、排阻、复位和晶振电路组成;按键输入模块由4个独立按键组成;水泵驱动模块由二极管和绿色指示灯组成,显示模块由LCD1602显示屏完成,温湿度数据采集和转换由DHT11芯片完成。图3-1 系统总电路图3.2 STC89C51单片机的硬件结构STC89C52RC是STC公司出产的一种低功耗、高性能CMOS8位微控制器,具备 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM, MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止,最高运作频率35MHz,6T/12T可选10。3.2.1单片机的结构及信号引脚1)STC89C52RC单片机的特性(如表3.1所示)表3.1 STC89C52RC单片机的特性2)芯片引脚介绍:图3-2为STC89C52单片机的引脚封装图。图3-2 STC89C52引脚封装图表3.2为单片机的引脚功能说明。表3.2 STC8C52引脚功能说明3.3 电源供电模块为整个系统的各个模块供电是对于一个完整的电路来讲的首要问题,为了克服STC89C51单片机在实际的操作过程中因容易受到外来因素的干扰而出现程序跑飞或陷入死循环等现象,这就需要为STC89C52RC单片机系统配置一个稳定可靠的电源模块。本设计采用的是两个电源接口,连接外部电源,图3-3是电源模块原理图。图3-3 电源模块原理图3.4 单片机控制模块3.4.1单片机的最小系统单片机是一个完整电路系统的核心控制部分,控制着整个系统是否能成功运行并达到设定的目标。单片机的最小系统由晶振电路和复位电路组成,如图3-4是复位和晶振部分的原理图。图3-4 复位和晶振部分原理图(1)复位电路在系统开始运行的时候,都需要对系统进行一个初始化,而在单片机的最小系统中,复位电路就是为了把电路系统初始化而存在的,复位电路的原理就是在将单片机的电阻和电容接在单片机的复位引脚RST上,实现一个上电复位,只有当复位电平持续两个机器周期以上时复位才有效。具体的数值可以由RC电路计算出来。(2)晶振电路(时钟电路)只要是一个完整的单片机系统,就一定会有晶振,晶振是通过一种能把机械能和电能进行相互转化的晶体在共振的状态下进行工作,从而提供稳定而精确的单频振荡。晶振在整个单片机系统里的作用是不可或缺的,它与单片机的内部电路相结合,产生一个单片机所需要的时钟频率,晶振提供的时钟频率越高,单片机的运行速度就会越快,单片对整个系统所执行的一切指令都是建立在晶振提供的这个时钟频率之上的。3.4.2 单片机控制的电路设计在整个系统中,单片机外接电源供电模块、温湿度采集模块、按键输入模块、显示模块和水泵驱动模块(此系统用一个绿色的指示灯来代替)。当电源为整个系统供电后,温湿度采集模块和按键输入模块对单片机提供数字信号,单片机再依据编写的程序指令来控制显示屏的显示结果以及水泵是否启动继电器进行灌溉(绿色指示灯是否亮)。图3-5是单片机控制模块(MCU)原理图。图3-5 MCU原理图3.5湿度采集模块3.5.1温湿度传感器DHT11的原理1)DHT11的概述DHT11传感器是一款温湿度复合传感器,它和单片机之间工作时不需要进行A/D模数转换,直接输送给单片机的信号就是已校准的数字信号,由于它的这一性能,所以专用于温湿度传感技术和数字模块采集技术方面,以确保产品有极高的稳定性与可靠性。传感器的内部结构由一个电阻式感湿原件和一个NTC测温元件组成,同时还与一个高性能的8位单片机相连接。因此,该产品具有体积小、接口简单、品质卓越、超快响应、抗干扰能力强、性价比极高等特点,性价比极高。也正是由于DHT11传感器的这些优势,使它在自动控制和家电品领域中拥有较高的应用价值。图3-6为温湿度采集模块系统原理图。图3-6 温湿度模块系统原理图2)DHT11的引脚及硬件电路设计DHT11传感器采用的是4针单排引脚封装。引脚说明如表3.4所示表3.4 DHT11引脚说明DHT11温湿度传感器有4个引脚,其中第一和第四个引脚分别接电源正极和接地,第三个引脚置空,第二个引脚和STC89C52单片机的p2.4引脚连接,当接通电源后,主机(微处理器)发送一次开始信号,DHT11从低功耗模式转换到高速模式,等待主机的开始信号结束后,DHT11发送响应信号,送出40位的测量数据,并触发一次信号采集,用户可选择读取部分数据。当DHT11接收到开始信号后触发一次温湿度采集,如果没有接收到mcu发送的开始信号,DHT11不会主动对温湿度进行采集。采集数据后转换到低速模式。3)DHT11特性(如表3.5所示)表3.5 DHT11特性3.6 液晶显示模块3.6.1 LCD1602液晶模块简介本系统的显示器采用的是LCD1602液晶显示器,它专门用于数字、字母、符号等的显示。同时它也是一个2 行×16 个字符的字符型液晶显示器。它是由32 个字符点阵块组成的,而每个字符点阵块又由5×7 或5×11 个点阵组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,可以显示ASCII 码表中的所有可视的字符。图3-7为液晶显示模块系统原理图。液晶显示模块和单片机的p0端口连接,单片机会把传感器传送给它的数字信号进行处理后把实际温湿度值和设定的温湿度下限值显示在显示屏上。图3-7 液晶显示模块系统原理图3.6.2 LCD1602的引脚及电路设计LCD1602采用标准的16脚接口,其中各引脚的功能如下(表3.3):表3.3 LCD1602各引脚的功能LCD1602的第1和第2号引脚分别接GND和VCC,第3引脚VEE没有接,这个脚是控制屏幕对比度的。可以将电位器的两端分别接VCC和GND,中间端接LCD1602的第3脚。第4号脚与单片机的P1.0端口连接,第5号引脚接地,第6号引脚与单片机的p1.1端口连接,第714号引脚与单片机的p0.0p0.7端口连接,第15和16号引脚分别接VCC和GND。当单片机与LCD1602显示屏电路连接好后,只要把控制液晶显示模块的程序下载到单片机中,单片机就能控制显示屏的显示结果。本设计显示屏能够分别显示温湿度的实际值和设定值。 3.7 按键输入模块本设计的按键输入模块是由4个规格为6*6*5的四脚按键构成的,S1接单片机的p2.3,具有增加设定温度值的功能;S2接单片机的p2.2,具有降低设定温度值的功能;S3接单片机的p2.1,具有提高设定湿度值的功能;S4接单片机的p2.0,具有降低设定湿度值的功能(每次按键后增减的幅度值为1)。用户可以根据植物生长适宜的湿度环境来设定相应的温湿度值。图3-8是按键输入模块的系统原理图。图3-8 按键输入模块系统原理图3.8 水泵增湿模块水泵增湿模块与单片机的p1.5连接,当传感器检测的湿度值低于设定值10%时,单片机给IN4148开关二极管一个正向电压,这是二极管的电阻很小,电路处于导通状态,相当于接通一个开关,使水泵进行灌溉(绿色指示灯亮),在灌溉的过程中,当传感器检测到的湿度值高于设定值10%时,单片机又给二极管一个反向电压,这是二极管的电阻值就会很大,相当于一只断开的开关,使水泵停止灌溉(绿色指示灯灭),将程序录入单片机后,通过单片机对二极管的控制便能控制水泵是否进行灌溉。图3-9是水泵模块的系统原理图。图3-9 水泵模块系统原理图4 系统软件设计4.1程序设计4.1.1主程序流程及相关说明首先依照系统所要实现的功能和实现这个功能的原理,设计一个主程序流程图,智能灌溉控制系统工作流程图如图4-1所示。然后按照这个流程图在Keil Vision3软件中进行程序的开发(设计与编译)。接通电源后开始,进行单片机数据初始化、显示器初始化、传感器采集数据并显示到显示器上,接着判断是否处于灌溉状态和按键扫描。程序循环扫描设定按键是否被按下,当按键按下时,进入设定模式,设定温湿度值下限,若没有按下按键则继续采集温湿度值。接着返回到测量程序,若处于灌溉状态,则当检测到的湿度值高于设定值10%时停止灌溉,若处于非灌溉状态,则判断检测到的湿度值是否小于设定值的10%,若小于,则启动水泵灌溉,若不小于,则继续采集温湿度,如此循环进行下去 图4-1 智能灌溉控制系统的主程序流程图4.2主程序代码1)主程序:void main()uchar i,j=100;init_1602();/初始化1602while(1)j+;/利用j的累加刷新显示1206的频率,if(j>250)/ j=0;display(); /调用温度湿度读取函数 显示实际温度湿度/检测按键S1按下,温度值加1k0=k1;k1=s4;/温度加if(k0&&(!k1) set_temp+;/检测按键S2按下,温度值减1k2=k3;k3=s3;/温度减if(k2&&(!k3) set_temp-; /检测按键S3按下,湿度值加1k4=k5;k5=s2; /湿度加if(k4&&(!k5) set_rh+;/检测按键S4按下,湿度值减1k6=k7;k7=s1; /湿度减if(k6&&(!k7) /实际与设定比较 set_rh-;2)读取温度与湿度值代码如下:void RH()/主机拉低18ms DS=0;delay_ms(18);DS=1;/主机拉高20-40usdelay_us(10); if(!DS) /T ! sum=2;while(!DS)&&sum+);sum=2;while(DS)&&sum+); rh_h_temp=COM();rh_l_temp=COM();temp_h_temp=COM();temp_l_temp=COM();check_temp=COM();DS=1; sum_temp=(temp_h_temp+temp_l_temp+rh_h_temp+rh_l_temp);if(sum_temp=check_temp)rh_h=rh_h_temp;rh_l=rh_l_temp;temp_h=temp_h_temp;temp_l=temp_l_temp;check=check_temp;/fi /fi3)显示实现温湿度的程序:void display(void) RH(); /读DH113函数write_com(0XC8); /发送显示指令write_date(temp_h/10%10+48);/显示温度的十位write_date(temp_h%10+48); /显示温度的个位write_date('C'); /显示温度的字符Cwrite_com(0X88); /write_date(rh_h/10%10+48);write_date(rh_h%10+48);write_date('%'); /显示湿度的表示比例的字符%/显示设定温度湿度write_com(0XCD); write_date(set_temp/10%10+48); write_date(set_temp%10+48);write_date('C');write_com(0X8D);write_date(set_rh/10%10+48);write_date(set_rh%10+48);write_date('%');if(rh_h<(set_rh-10)kk=0;else if(rh_h>(set_rh+10)kk=15 测试结果与分析5.1 测试环境本设计的测试是在我自己的寝室完成的。接通外接电源后, 对主控板实物进行测试,当达到灌溉的条件时,使用水喷壶对传感器喷水,使检测到的实际湿度不断提高,再达到停止灌溉的条件时,使用电吹风对传感器进行吹风处理,相当于水分的蒸发和土壤的吸收导致实际湿度降低。5.2 测试结果图5-1至5-6为自动灌溉控制系统的主控板实物图的测试过程及结果,单片机放在LCD1602液晶显示器的下面,左侧下方接口为电源接口,右侧上方接口为温湿度传感器接口,左侧红色指示灯为电源指示灯,右侧绿色指示灯代表水泵驱动系统,当湿度低于设定值10%时绿色指示灯亮起(代表灌溉),一直灌溉到湿度高于设定值10%时绿色指示灯熄灭(停止灌溉),当水分由于蒸发、吸收等使湿度值再次低于设定值的10%时,指示灯又亮起,如此循环进行。经实际操作测试,符合目标要求 。图5-1 实际湿度低于设定值10%进行灌溉(绿色指示灯亮)图5-2 灌溉后湿度达到设定值继续灌溉(绿色指示灯亮)图5-3 灌溉后湿度值高于设定值10%停止灌溉(绿色指示灯灭)图5-4 湿度降至高于设定值10%以内不灌溉(绿色指示灯灭)图5-5 湿度降至低于设定值10%以内不灌溉(绿色指示灯灭)图5-6 湿度降至低于设定值10%后进行灌溉(绿色指示灯亮)6 调试与使用说明调试过程如下:(1)、在Keil软件中设置产生HEX文件,并将晶振频率设为12MHZ,如图6-1所示,然后进行编译。图6-1 KEIL3设置截图(2)、利用STC-ISP(v6.67c)软件将程序下载到STC89C52单片机里面,如图6-2所示,使实物图能够进行演示。 图6-2 下载程序截图使用说明:先将传感器、电源接入到主系统板上,将传感器插入到土壤中,插上电源,系统供电正常时,液晶显示器会显示当前测量的土壤湿度值和温度值,按设定键进入设定模式,并在设定模式里按3键和4键进行设定湿度下限值的增减,待设定完成后,在测量模式中,判断当前测量湿度,如果小于设定湿度值的10%,则绿色指示灯亮起(即表示进行灌溉)。7 结论经过了近一个学期的学习和努力,我终于完成了基于单片机的模拟智能灌溉控制系统的设计。从刚开始接到这个论文(设计)题目到电路的设计,到硬件实物的完成,然后到程序的一步步调试实现整个系统所需的功能,再到论文文本的初步完成,最后再到定稿对我来说每走一步艰难的,同时每一步也都是新的尝试与挑战。在这近一个学期的时间里,我学到了很多有关单片机方面的知识,也有很多感受,通过自己独立学习、思考和实验,并查看了许多相关的资料和书籍,不懂的地方也会主动的请教老师和其他会的人,使自己头脑中一些模糊的概念逐步清晰,使设计一步一步完善,每一次的改进都是我学习的收获,每一次实验的成功都会让我有很大的成就感,会让我更加自信,更有激情和动力。 虽然我的毕业设计作品不是很成熟,也存在很多的不足之处,其中缺少了光照模块和水泵电路,而且温度值也只起到了参考作用,这个是非常遗憾的。但值得我高兴的是,本次设计里的硬件实物制作和软件的编写。当看着电路的完成,硬件实物的完成,程序的一步步成功的运行,让我越来越有自信能很好的完成本次设计,我相信在整个系统设计和论文编写过程中碰到的困难与挫折,最终都会化成幸福的笑脸。完成这次毕业设计的经历让我收获颇多,让我感受到做任何事情要想完成好它就必须踏实认真、努力用心去做的,是一个自己亲自学习和研究的过程,没有认真仔细的去学习就不可能获得较为全面的知识,而没有获得全面的知识也就不可能有研究的能力,如果自己不去亲自实验研究,就不会有所突破和创新,如果没有突破和创新,那就失去了毕业设计的初衷和意义。通过这次毕设,我相信在以后当我碰到困难和挫折时一定能坚韧的去克服它,勇往直前,在以后的学习和生活中一定能更上一层楼。参考文献1 王友贞节水灌溉与农业可持续发展M 中国机械出版社,2005:15232 刘建辉单片机智能控制技术M国防工业出版社,20073 吴普特,牛文全,郝宏科现代化高效节水灌溉设施M化学工业出版社,2002:12374 涂安富,金诚谦,吴崇友,卢宴,钟伟民几种节水灌溉新技术分析M中国农机化出版社,20055 刘明真,陈鸿基于单片机智能节水灌溉系统的设计J学术问题研 究,2010-06-15:08156 宫建华,徐志祥,袁虎成,张家桂基于单片机技术的灌溉控制系统的设计与实现J机械研究与应用,2004-04-30 7 刘瑞新单片机原理及应用教程M机械工业出版社,2003-078 郑毛祥单片机应用基础M人民邮电出版社,2009-029 郑锋51单片机典型应用开发范例大全M中国铁道出版社,201110 张连华单片机应用系统设计方法J科学之友,2010-0411 范风强,兰婵丽单片机语言C51应用实战集锦M电子工业出版社,2003-03-0112 谭浩强C程序设计M清华大学出版社,200613 赵负图传感器集成电路手册M化学工业出版社,200414 赵燕传感器原理及应用M北京大学出版,2010-02-0115 蔡自兴智能控制M电子工业出版社,200416 吴景社,李久生21世纪节水农业中的高新技术重点研究领域M 农业工程出版社,200317 李泉溪 单片机原理与应用实例仿真M 北京:北京航空航天大学出版 社,2009:3845.附录1元器件清单:序号名称型号数量1单片机ATS89C5212传感器DHT1113电位器5K14继电器5V15显示屏LCD160216RR排阻10K17二极管IN414818三极管855019电容30PF210电阻1K311按键开关6*6*5412晶振12MHZ113指示灯3MM214接口3附录2 基于STC89C52单片机的智能灌溉控制系统PCB图:附录 3DHT11模块代码:#include <reg52.h> #include "DHT11.H"sbit DS=P24;uchar sum=0,sum_temp=0;uchar temp_h,temp_l,rh_h,rh_l,check;uchar temp_h_temp,temp_l_temp,rh_h_temp,rh_l_temp,check_temp; void delay_ms(uint i) uint j;for(i;i;i-)for(j=123;j;j-);void delay_us(uchar i) while(-i); uchar COM(void)uchar i,value;for(i=8;i;i-) sum=2;while(!DS)&&sum+);delay_us(10);value<<=1;if(DS)value|=0X01;sum=2;while(DS)&&sum+);/超时则跳出for循环 if(sum=1)break;return value;void RH()/主机拉低18ms DS=0;delay_ms(18);DS=1;/主机拉高20-40usdelay_us(10); if(!DS) /T ! sum=2;while(!DS)&&sum+);sum=2;while(DS)&&sum+); rh_h_temp=COM();rh_l_temp=COM();temp_h_temp=COM();temp_l_temp=COM();check_temp