1、1安 徽 农 业 大 学毕 业 论 文(设计)论文题目 基于 51 单片机的农田自动灌溉系统 姓 名 田秦 学 号 11103932 院 系 信息与计算机学院 专 业 电子信息工程 指导教师 魏雅鹛 职 称 讲师 中国合肥二 o 一五 年 六 月2安徽农业大学学士学位论文(设计)开题报告课题名称 单片机智能自动浇花系统的设计 课题来源 导师指定学生姓名 田秦 专业 信息与计算机学院 学号 11103932指导教师姓名 魏雅鹛 职称 讲师研究内容1.开关量输入:按键开关。2.开关量输出:控制外部设备。3.模拟量输入:用湿度传感器检测外部模拟量。4.串行通信:上、下行通信。研究计划3 月中 3 月
2、底 调研、查资料。4 月初 4 月中 确定系统架构、分析并划分各功能模块的接口。4 月底 5 月中 各功能模块软、硬件的设计与开发。5 月下 5 月底 各功能模块及整个系统的调试与运行。6 月初 撰写毕业设计论文。特色与创新利用湿度传感器来检测土壤的含水量并将检测到的信号传给控制器 51 单片机,通过土壤湿度传感器检测到的土壤数据反馈到单片机,单片机经过比较处理。如果需要浇水则驱动水泵电机浇水。如果不需要单片机停止浇水实时显示当前湿度。系统可可以设定上限和下限。指导教师意见教研室意见学院意见目 录31 引言 .42 系统设计 .52.1 方案论证 .52.1.1 总体方案设计 .52.1.2
3、芯片的选择 .62.1.3 系统结构 .62.2 系统硬件设置 .72.2.1 AT89S51 主要性能参数 .72.2.2 时钟电路 .82.2.3 AT89C51 的复位电路 .92.2.4 YL-69 土壤湿度传感器 .102.2.5 ADC0832 功能特点及引脚 .112.2.6 ADC0832 的控制原理 .132.2.7 继电器 .132.2.8 蜂鸣器及按键 .152.3 系统软件设计 .172.3.1 系统流程图 .172.3.2 LCD1602 显示程序 .182.3.3 按键程序 .183 仿真设计与硬件调试 .203.1 仿真设计 .213.2 硬件测试与调试 .224
4、 结论 .23参考文献 .24致谢 .25英文摘要 . 26附录 .274基于 51 单片机的农田自动灌溉系统设计学生:田秦 指导老师:魏雅鹛(安徽农业大学 信息与计算机学院 合肥)摘要:科技在发展时代在进步,自动控制技术在农业方面的运用越来越广泛,这次农田自动灌溉系统是使用 AT89C51 单片机作为系统的控制中心,我们通过YL-96 模块来检测土壤水分,然后把 YL=96 所得到的具体情况在 LDC1602 上表示出来,系统中包括一个蜂鸣器,是用来模拟其通知模块的,系统中会通过四个按键组成的按键系统来对数据的上下限进行设定,超过限制则报警,有上述几个模块则自动灌溉得以实现,灌溉的同一时间蜂
5、鸣器则会发出 bb 的提示声音。这项技术给我国的农业发展带来巨大的便利,本篇文章则是简单的模拟这项技术的实现。关键词:YL-69;AT89C51;单片机; LCD1602;土壤湿度1 引言试想人类如果还在那个不能保证温饱的时代,我们该如何去改善这一切,努力发展农业生产力则是一切之重。那么如何获取更高的水稻产量成为当今我国农业研究项目中的大问题。扯得有点远,但是为了实现这一目标,方便的自动化的农田设施当然是必不可少的,而灌溉又是一个重中之重的问题,所以农田的自动灌溉系统也就成为了设计农田设施之中的一部分。由于农作物的种类不同,其对水分的要求也就不同,就如水稻种在水田而小麦种在旱地的道理一样,不同
6、的农作物需要与其相适应的湿度环境,所以合理地土壤湿度会决定作物是否能够优良的成长,而且也能避免不必要的水资源浪费,因此,要设计一个高效的灌溉系统首先要看它是否能根据植物的需求进行适当适量的供水。首先是测量,得到土壤中湿度的数据,根据土壤湿度以及其中所含的物质的数据结合作物对水的需求特性来确定控制灌溉的 力度。这对过去的灌溉经验有着巨大冲击,在科学的基础上对作物的灌溉作出决策。其次是控制,利用土壤的研究数据以及作物的需水特性合理的决策灌溉策略,就是否定自古以来的全屏经验人工的控制方式取而代之进行适时适当的灌溉控制。采用植物的特性和土壤数据结合的方式通过灌溉装置控制给水的量,使水资源5合理的被利用
7、,也达到了节约人力物力智能控制作物灌溉的目的。2 系统设计2.1 方案论证2.1.1 总体方案设计通过虹吸原理给水的农作物自动灌溉系统在当今农业界运用普遍,也就是我们所说的利用渗透的原理的灌溉方式,这是一种不间断持续的灌溉手段。这种农业灌溉方式只可以确保作物的不缺水,使作物不会死于干旱枯水,可它对作物是否处于最有利生长的湿度环境并不能做出很好的保证,而其对水的浪费量也是前所未有的。为了解决虹吸原理的灌溉装置造成的问题,现有本人设计了一种作物自动灌溉系统,不同于其他本装置将自动化的控制作物生长环境中的湿度水分,也就是选择性的对植物进行适度的灌溉,通过硬件的控制根据作物的需水特性结合土壤的湿度数据
8、作出合理的灌溉控制。先不提过程,我们在单片机程序的指导下,采集土壤中水分的数据,然后决定控制数据的上下限,在 51 单片机的分析与计算下选取合适的灌溉量,其中包括判断土壤中水分的数据,如若传感器收集的数据没有达到设定的下限数据,蜂鸣器发出刺耳的蜂鸣声作为报警,然而如果数据并没有突破上限则单片机控制装置中断灌溉行为,如此一来对农作物的自动灌溉的设想能有实现的可能。设计需要达到以下若干功效:1.在单片机的指导下通过 YL-69 模块得到土壤中水分的数据;2.在 LDC1620 上显示出YL-69 所得到的土壤的含水量的数据;3.收集各种作物最佳生长所需土壤湿度设置灌溉的控制点;4.收集的土壤湿度数
9、据和作物需水特性的数据通过单片机的分析和计算,让灌溉系统决定是否进行灌溉。本作物自动灌溉系统分为软件和硬件两个模块构成,首先由单片机主控模块、然后是显示模块、土壤水分数据采集部分,输入部分,灌溉部分,蜂鸣器系统部分六个子系统组成了硬件系统。其中 AT89C51 是主控模块上的部分,是次系统的中心部分。而传感器模块则由 YL-69 为核心。利用按钮部分来实现控制点的设定。显示模块则是更明确的显示各项数据,实现人性化,当然报警模块也是如此。水泵则是实现执行作6用。软件部分与硬件部分大同小异但目的相同,即实现模块的清晰的条理性,与硬件相互配合来实现的设想。因为要实现与硬件的适配,其部分必然与硬件差不
10、了太多,但是软件系统方便,灵活,具有较强的交互性,而软硬件的结合的思路让这个作物自动灌溉系统更加的优化。相比较市场上主流的系统具有误差小,稳定可靠的优点。2.1.2 芯片的选择芯片的选择:AT89C51 A/D 转换:ADC0832继电器选择:松乐 SRS-05VDC-SL。显示器的选择:LCD1602 2.1.3 系统结构本系统有电源接口电路、显示电路、土壤检测电路、继电器控制潜水泵电路、蜂鸣器电路、按键设置六大部分组成。系统原理图如图 1 所示。AT89C51单片机电源电路土壤检测LCD1602 显示蜂鸣器水泵电路按键图 2.1-1 系统原理图2.2 系统硬件设置2.2.1 AT89S51
11、 的介绍 7图 2.2-1 AT89C51 引脚图一个完整的计算机必须要包括一下若干个成分:CPU,存储器,I/O 接口与时钟系统。在现在的计算机上这些部分全部都被复杂化并分散在不同的芯片上面,可以实现非常复杂的功能,但是这些都太过复杂不利于研究,于是就诞生了一种简单的被集成在同一个主板或者线路板上的我们称之为单片机。而AT89S51 正是其中的一种。它具有功耗低易于学习价格低廉等优点,因为它具有输入输出控制端口以及内外部的存储空间能实现 A/D,D/A 转换以及通过外接传感器对信息的采集,而且可以轻易的实现人机互动显示数据在显示屏上,并且能通过 I/O 端口实现对外部设施的控制,具有一系列的
12、优秀功能。AT89S51系列单片机语言的编写流程较为基础,其语法结构类似于 C 语言但是又比普通的 C 更为容易学习,所以具有 C 编程基础的人通过一系列的学习很容易上手。同时这款芯片价格也足够低廉,可以满足大多数需求。有上述优点 AT89S51 迅速占领市场,成为人们生活中必不可少的一部分。AT89C51 在焊接的过程中比较容易,应为其引脚与电路图是相互对应的,所以焊接起来并不复杂,直接按照图上来的焊接就可以了,但是此原件一般是最先焊接的而且是整个系统的中心部分所以为了方便引出线路所以有必要放在线路板的中央部分,虽然简单也要求细心。2.2.2 时钟电路8图 2 中 X1,X2 部分为单片机中
13、的高增益方向的发达器的输入和输出引脚,可以在 XI、X2 之间接上石英晶体,然后就可以产生内部时钟,这就是所谓的内部时钟电路,这样做可以达到将输出立刻送到单片机内部电路的目的。有必要提一下其实单片机还有个外部时钟,这两种方式是有一定区别的。具体的看下图部分。图 2.2-2 单片机 AT89C51 的时钟电路既然上面说到内部时钟和外部时钟两种时钟方式,那么接下来就让我们谈谈这两种方式首先是内部时钟方式,内部时钟是单片机自带的,是单片机自己产生的,是一种普遍的基本的时钟。单片机的运行需要接入时钟产生脉冲信号,不管是哪种,但是若单片机的时钟电路停止工作那么单片机也无法运行,如何采用单片机自带的时钟呢
14、?这就是需要我们在 X2 和 XI 之间接入一个晶振,就是上面图上的石英晶体,然后在再两边都分别接入相同的电容器,电容器的另一端同时接地,电容的容量一般在几十皮法左右方可产生所需时钟信号。需要注意的是晶振必须放置在离单片机较近的地方以免影响其稳定性,否则会有寄生电容从而影响时钟信号的可靠性,如图 3 左边所示。另外我们再说一说与上面的由单片机内部提供信号的不同的方式,正如图3 右边所示,这就是我们所说的外部提供脉冲信号的方式,它直接接一来自外部的信号,其信号直接与 XTAL1 相连,而 XTL2 则不连。至于时钟电路的焊接,其实时钟电路最好焊接在离 AT95C51 最近的部分,9至于原因上述的
15、很明确了。2.2.3 AT89C51 的复位电路AT89C51 的引脚上可以看到一个用作复位作用的端口,电路图上用 RAT/Vpd来表示,其中 Vpd 表示备用电源。如今我们只谈谈其 RST 即复位功能。通过单片机原理图也能看到,RST 引脚作为其上唯一的具有复位功能的引脚,该引脚为其提供上电复位和掉电保护。当 AT89C51 的内部时钟工作时,就会有两个连续的机器周期的上升沿信号出现,接着就可以实现复位的操作,其将会回到初始的工作状态。但是考虑到单片机内部的振荡器有着一定的开始震荡的延迟时间,所以此复位引脚就由必要保持 10ms 左右的连续高电平才可以保证复位的有效性。在单片机中所有的启动程
16、序运行程序都要有复位的存在,复位就是让单片机内部的系统处于一种初始化的阶段,然后单片机将从这个阶段开始正常的工作。除了上述所阐述的上电位复位以外还有一种复位方式我们称之为复位按钮重置,如果单片机执行程序出现错误或者出现了死循环时,就有必要使用复位按钮重置10图 2.2-3 复位重置部分如上图所示的复位系统便是本作物灌溉系统所采用的复位系统,这是一个按钮式的复位系统与图上电解电容的负极相连的引脚的就是单片机上的复位部分的引脚。RST 还分别与 10k 电阻的 R1,复位按钮 S1 相连,S1 的与 C3 的正极相连并且同时接 5v 电压电源 Vcc。R1 的下端接地。如此便构成了此复位系统。按下
17、按钮此时系统瞬间通电则在系统通电的时候,电解电容具有通电的同时不会瞬间改变两端电压大小的特点,这是一种延迟,因此电流直接通过 S1 进入单片机复位引脚,这种延迟会慢慢消失,RST 端电压会慢慢地下降到 3.6V。然后慢慢地充电将逐渐完成,如果这时候用万用表测量会发现基本上复位引脚的电压消失。如图 5 所示为 RST 引脚的电压变化。然而单片机只中的机械周期是与之前所说的 晶振电路的频率相挂钩的,所以 R1 的电阻必须要大一点的所以我们采用了 10k 欧的电阻。图中 S2,S3,S4 分别与单片级的 10 号,11 号,,1 号引脚相连分别控制系统的湿度控制点的设置,下面会详细提到,在此我们浅浅一提一笔带过。此部分的焊接要求原件的分布不混乱就可以了,按钮最好可以焊成一排。方便以后对系统的操作,如果是走线的话此部分焊接并没有难度,但本人是走锡的,路线较为复杂需要耐心。图 2.2-4 晶振部分2.2.4 YL-69 土壤湿度传感器