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