《自动浇花系统的设计毕业汇报资料.doc》由会员分享,可在线阅读,更多相关《自动浇花系统的设计毕业汇报资料.doc(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-/ XXXXXX 大学大学 本科生毕业论文本科生毕业论文 题题 目目 自动浇花系统的设计 系系 别别 电子信息科学与技术 班班 级级 xxx 姓姓 名名 xxx 学学 号号 1246332xx 答辩时间答辩时间 2016 年 5 月 xxxxxxxx 大学计算机与信息工程学院大学计算机与信息工程学院 -/ 目目 录录 1 自动浇花器的研究现状.2 2 系统设计的研究方法和手段.2 3 系统硬件简介.2 3.1 单片机的最小化系统.2 3.1.1 AT89C51 单片机的基本组成 .3 3.1.2 AT89C51 单片机的存储器 .3 3.1.3 振荡电路和时钟.4 3.2 LCD1602 简
2、介.5 3.2.1 LCD1602 的基本参数及引脚功能 .5 3.3 ADC0832 的简介 .7 3.3.1 ADC 静态特性 .8 3.3.2 ADC 动态特性 .8 3.3.3 ADC 性能测试 .9 3.3.4 常用 ADC 芯片概述.9 3.3.5 ADC0832 模数转换原理及主要技术指标 .10 3.3.6 主要特性.10 3.3.7 内部结构.10 3.3.8 外部特性(引脚功能).10 3.3.9 ADC0832 的工作过程 .11 3.3.10 ADC0832 与单片机的接口电路 .11 3.4 土壤湿度检测模块.12 3.4.1 比较器 LM393 .13 3.4.1.
3、1 LM393 主要特点: .13 3.4.1.2 LM393 引脚图及内部框图 .13 3.5 报警及电机驱动.15 4 软件设计 .15 4.1 主程序流程图.15 4.2 显示模块 .18 -/ 4.3 AD 转换模块 .19 4.4 湿度检测模块 .20 5. 结论.21 谢 辞.24 附录 1 原理图 .25 附录 2 参考程序 .26 -/ 自动浇花系统的设计 xxx 指导老师:xxx 摘要:本设计是基于 AT89C51 单片机和 ADC0832 的自动浇花系统。本设计的电 路内部包含湿度采集和 AD 转换等主要功能。自动浇水系统设计的浇水部分是通 过单片机程序设计浇水的上下限值与
4、感应电路送入单片机的土壤湿度值相比较, 当低于下限值时,单片机输出一个信号控制浇水,高于上限值时再由单片机输 出一个信号控制停止浇水。这样可以帮助人们及时地给心爱的盆花浇水。 关键词:AT89C51;湿度的采集与显示; LED Design of potted flowerss automatic watering system xxxxxxxxx Tutor:xxxxxx Abstract:This design is the automatic watering system AT89C51 based on MCU and ADC0832. The design of the circu
5、it contains the main functions of humidity acquisition and AD conversion. Watering part of automatic watering system design is through the upper and lower limits of microcontroller programming watering value and induction circuit into MCU soil moisture compared to the values, when the lower limit va
6、lue, the output of the single chip a signal to control the watering, above the upper limit again by the MCU output a signal control stop watering. This water can help people in a timely manner to the beloved flower. KeyKey words:words: AT89C51 ; Humidity acquisition and display ; LED -/ 1 自动浇花器的研究现状
7、 现如今人们的生活质量不断提高。人们都喜欢在家里养养盆花,这样可以 陶冶人们的情操,丰富人们的生活。同时盆花可以通过光合作用吸收二氧化碳, 净化室内空气,在有花木的地方空气中阴离子聚集较多,所以空气也特别清新, 而且许多花木还可以吸收空气中的有害气体,因此,养盆花如今被许多人喜爱。 给盆花浇水是否能做到适时及适量,是养花成败与否的关键。但是,在生 活中人们总是会有没时间照顾的时候,比如工作学习太忙,旅游或者出差等。 花草生长的问题大多数以上是由花儿浇灌不及时引起的;好不容易种植很长时 间的花草,因为浇水不及时或者长势不好,用来美化室内环境的花草几乎成了 “摆设”。因此,我想设计一种可以给盆花土
8、壤湿度进行检测,并且自动浇水 的盆花自动浇水系统。 2 系统设计的研究方法和手段 本次毕业设计是设计一种单片机控制的自动浇水系统,它可以实现室内盆 花浇水的自动化系统。该系统可对土壤的湿度进行实时监控,并对盆花进行适 时适量的浇水。其核心是单片机、湿度采集、显示电路以及浇水驱动电路构成 的检测以及控制部分。主要研究土壤湿度与浇水量之间的关系、浇灌控制技术 及设备系统的硬件、软件编程各个部分。该设计的检测部分单片机选用 AT89C51 单片机,软件部分选用 C51 语言编程。土壤湿度采集于显示电路可将 检测到的土壤湿度模拟量放大转换成数字量并且通过单片机内程序控制精确的 将湿度分显示在 LCD
9、显示屏上,通过单片机内的程序判断是否要给盆花浇水, 如果需要浇水,则单片机系统就会发出浇水信号,带动水泵开始浇水,若不需 要浇水,则进行下一次循环检测。 3 系统硬件简介 3.1 单片机的最小化系统 AT89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器的低电压,高性能 CMOS8 位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除 100 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS- 51 指令集合输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个 -/ 芯片中,ALMEL 的 AT89C51 是一种高效微控制器,AT
10、89C51 单片机为很多嵌入式 控制系统提供了一种灵活性高且价格低廉的方案。 3.1.1 AT89C51 单片机的基本组成 AT89C51 由一个 8 位的微处理器,128KB 片内数据存储器 RAM,21 个特殊功 能寄存器 SFR,3KB 片内程序存储器 Flash ROM,64KB 可寻址片内外一编址的 ROM,64KB 可寻址片外的 RAM,4 个 8 位并行 I/O 接口(P0-P3),一个全双工通 用异步串行接口 UART,两个 16 位的定时器、计数器,具有位操作功能的布尔 处理机及位寻址功能的五个中断源、两个优先级的中断控制系统以及片内振荡 器和时钟产生电路。其基本组成框图如图
11、 3-1-1 所示。 图 3-1-1 AT89C51 单片机的基本组成 3.1.2 AT89C51 单片机的存储器 在单片机中,存储器分为程序存储器 ROM 和数据存储器 RAM,并且两 个存储器是独立编址的。 AT89C51 单片机芯片内配置有 8KB(0000H-1FFFH)的 Flash 程序存储器 和 256 字(00H-FFH)的数据存储器 RAM,根据需要可外扩到最大 64KB 的程 序存储器和 64KB 的数据存储器,因此 AT89C51 的存储器结构可分为 4 个部 分:片内程序存储器、片外程序存储器、片内数据存储器和片外程序存储器。 -/ 下图给出了 AT89C51 单片机的
12、存储器分布空间。左侧框中为单片机自身 提供的 8KBFlash 程序存储器和 256 字节数据存储器 RAM。右侧为可扩展的 64KB 的程序存储器 ROM 和 64KB 的数据存储器 RAM。 图 3-1-2 存储器空间分布 (1)程序存储器 AT89C51 的程序存储器由 ROM 构成,切断电源后程序是不会丢失的,它 的作用是存储好编写好的程序中所用的常数,最大容量有64KB。 (2) 数据存储器 它的作用是用来存放数据,运算中间结果,和带调试的程序等等。 单片机自带的数据存储器 RAM 结构如图 2-4 所示,此字节单元( 00H- FFH)的低 128 字节(00H-7FH)单元为用户
13、使用区,高 128 字节(80H- FFH)单元为特殊功能寄存器 SFR 区。 片内数据存储器的 00H-7FH 单元又划分为 3 块:00H-1FH 块是工作寄 存器所用;20-2FH 块是位寻址功能的单元区; 30H-3FH 是普通 RAM 区。工作 寄存器又分为 4 组,在当前的运行程序中只有一组是被激活的,谁被激活有 程序状态寄存器 PEW 的 RS1,RS0 两位决定。 3.1.3 振荡电路和时钟 在 AT89C51 芯片内部,有一个振荡电路和时钟发生器,引脚XTAL1 和 XTAL2 之间接入晶体振荡器和电容后构成内部时钟方式。也可以使用外部 振荡器,由外部振荡器产生的信号直接加载
14、到振荡器的输入端,作为CPU -/ 的时钟源,称为外部时钟方式。采用外部时钟方式时,外部振荡器的输出信 号接至 XTAL1,XTAL2 悬空。两种方式的电路连接 图 1.6 所示。大多数的单 片机采用内部时钟方式,本次设计亦然。 在 AT89C51 单片机内部,引脚 XTAL2 和引脚 XTAL1 连接着一个高增益反 相放大器,XTAL1 引脚是反相放大器的输入端, XTAL2 引脚是反相放大器的 输出端。 芯片内部的时钟发生器是一个二分频触发器,振荡器的输出fosc 为 其输入,输出为两相时钟信号 (状态时钟信号),频率为振荡器输出信号频率 fosc 的二分之一。 3.2 LCD1602 简
15、介 3.2.1 LCD1602 的基本参数及引脚功能 LCD1602 液晶显示器具有功耗低、体积小,超薄轻巧等优点,同时可以显 示字母、数字符号以及中文字符,显示的内容十分丰富。它还分为带背光和不 带背光两种,基控制器大部分为 HD44780,带背光的比不带背光的厚,是否带 背光在应用中并无差别,两者尺寸差别如图 3-2-1 所示。 图 3-2-1 LCD1602 结构图 LCD1602 主要技术参数: 容量:162 个字符 芯片工作电压:4.55.5V 工作电流:2.0mA(5.0V) 模块最佳工作电压:5.0V 字符尺寸:2.954.35(WH)mm 引脚功能说明: -/ 引脚接口说明表
16、3-2-1 编号符号引脚说明编号符号引脚说明 1VSS 电源地 9D2 数据 2VDD 电源正极 10D3 数据 3VL 液晶显示偏压 11D4 数据 4RS 数据/命令选择 12D5 数据 5R/W 读/写选择 13D6 数据 6E 使能信号 14D7 数据 7D0 数据 15BLA 背光源正极 8D1 数据 16BLK 背光源负极 第 1 脚:VSS 为地电源。 第 2 脚:VDD 接 5V 正电源。 第 3 脚:VL 为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比 度最高,对比度过高时会产生“鬼影”,使用时可以通过一个 10K 的电位器调 整对比度。 第 4 脚:RS 为寄存
17、器选择,高电平时选择数据寄存器、低电平时选择指令寄存 器。 第 5 脚:R/W 为读写信号线,高电平时进行读操作,低电平时进行写操作。当 RS 和 R/W 共同为低电平时可以写入指令或者显示地址,当 RS 为低电平 R/W 为 高电平时可以读忙信号,当 RS 为高电平 R/W 为低电平时可以写入数据。 第 6 脚:E 端为使能端当 E 端由高电平跳变成低电平时,液晶模块执行命令。 第 714 脚:D0D7 为 8 位双向数据线。 第 15 脚:背光源正极。 第 16 脚:背光源负极。 LCD1602 的一般初始化(复位)过程: 延时 15mS 写指令 38H(不检测忙信号) -/ 延时 5mS
18、 写指令 38H(不检测忙信号) 延时 5mS 写指令 38H(不检测忙信号) 以后每次写指令、读/写数据操作均需要检测忙信号 写指令 38H:显示模式设置 写指令 08H:显示关闭 写指令 01H:显示清屏 写指令 06H:显示光标移动设置 写指令 0CH:显示开及光标设置 3.2.2 显示模块采用 1602 液晶显示接口电路 图 3-2-2 1602 液晶显示接口 3.3 ADC0832 的简介 ADC0832 其实就是美国国家半导体公司生产的 CMOS 工艺 8 通道,8 位逐次 逼近式 A/D 模数转换器。其内部有一个 8 通道多路开关,它可以根据地址码锁 存译码后的信号,只选通 8
19、路模拟输入信号中的一个进行 A/D 转换。是目前国 内应用最广泛的 8 位通用 A/D 芯片。 图 3-3 ADC0832 引脚图 -/ 3.3.1 ADC 静态特性 ADC 的静态特性是指其与时间特性无关的特性,主要包括以下几类: 1) 分辨率 ADC 的分辨率定位为二进制末位变化 1 所需的最小输入电压与参考电压的 比值,即 ADC 能够分辨的最小的模拟量的变化。 2) 量化误差 量化电平定义为满量程电压(或满度信号值)UFSR 与 2 的 N 次幂的比值, 其中 N 位被数字化的数字信号的二进制位数。量化电平一般用 Q 表示。 3) 全输入范围和动态范围 全输入范围是指允许输入模拟信号的
20、最大值与最小值之差;动态范围是指 全输入范围与 ADC 最小可分辨的量值之比。 4) 偏置误差和增益误差 ADC 的偏置误差定义为使最低位被置成“1”状态时 ADC 的输入电压与理论 上使最低位被置成“1”状态时的输入电压之差。当偏置误差高速为零之后,输 出为全 1 时对应的实际输入电压与理想输入电压之差。 3.3.2 ADC 动态特性 高速 ADC 的动态特性是指输入为交变简谐信号时的性能技术指标,它是与 ADC 的操作速度有关的特性。其主要技术指标如下: 1) 转换时间、采集时间 转换时间是指从信号开始转换到可获得完整的信号输出所用的时间,它是 高速 ADC 的一项重要指标。 采集时间是指
21、采样保持电路在采样模式下能够保证其在随之到来的保持模 式输出在采样保持转换时,相对该时刻存在的输入电平之间的误差将会限制在 一定的误差范围内所需的时间。 2) 频率响应 它是冲击响应的傅立叶变换,其最佳表达方式是幅频与相频曲线,从系统 辨识的角度看这是在频域对 ADC 动态线性特性的非参数模型描述。 3) 动态积分非线性误差和动态微分非线性误差 -/ 动态积分非线性误差(INL)定义为在动态情况下(一般输入信号为正弦信 号),ADC 实际转换特性曲线之间的最大偏差。每个数码的偏差都是由那个数 码的中心值来度量的。 动态微分非线性误差(DNL)定义为在动态情况下(一般输入信号为正弦信 号),AD
22、C 实际转换特性的码宽(1LSB)与理想代码宽度之间的最大偏差,单 位为 LSB。为了保证 ADC 不失码,通常规定在 25oC 时最大 DNL 为 1/2LSB。 4) 信噪比、信噪失真比和有效位数 信噪比(SNR)是信号电平的有效值与各种噪声(包括量化噪声、热噪声、 白噪声等)有效值之比的分贝数。其中信号是指基波分量的有效值,噪声指奈 奎斯特频率以下的全部非基波分量的有效值(除谐波分量和直流分量外)。 5) 小信号带宽和全功率带宽 ADC 的模拟带宽是指输入扫描频率基波在 ADC 输出端用 FFT 分析得到的基 波频谱下降到 3dB 处的带宽(不考虑谐波失真和噪声影响)。根据输入信号幅 值
23、不同,模拟带宽又可以分为小信号带宽(SSBW,一般指 1/10 满量程)和全功 率带宽(FPBW,指满量程)。 3.3.3 ADC 性能测试 ADC 测试方法主要有两种:模拟方法和数字方法。前者是将 A/D 采集的数 字信号经 D/A 转换位模拟信号再用传统的测试方法对其进行测试,优点是易于 理解,缺点是许多 A/D 采集卡本身不带 D/A,即或有,D/A 的性能也将影响 A/D 指标的测试。 3.3.4 常用 ADC 芯片概述 A/D 转换器是用来通过一定的电路将模拟量转变为数字量。模拟量可以是 电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。 但在 A/D 转换之前,输
24、入到 A/D 转换器的输入信号一定要经各种传感器把各种 物理量转换成电压信号。 3.3.5 ADC0832 模数转换原理及主要技术指标 ADC0832 是美国国家半导体公司生产的一种 8 位分辨率、双通道 A/D 转换芯片。其内部有一个 8 通道多路开关,它能够根据地址码锁存译码后的 -/ 信号,只选通 8 路模拟输入信号中的任何一个进行 A/D 转换。这是目前国 内应用最广泛的 8 位通用 A/D 芯片。 3.3.6 主要特性 1)8 路输入通道, 8 位 A/D 转换器,即分辨率为 8 位。 2)具有转换起停控制端。 3)转换时间为 100s(时钟为 640kHz 时),130s(时钟为
25、500kHz 时) 4)单个5V 电源供电 5)模拟输入电压范围 05V,不需零点和满刻度校准。 6)工作温度范围为 -4085 摄氏度 7)低功耗,约 15mW。 3.3.7 内部结构 ADC0832 是 CMOS 单片型逐次逼近式 A/D 转换器,它由 8 路模拟开关、 地址锁存与译码器、比较器、 8 位开关树型 A/D 转换器、逐次逼近。 3.3.8 外部特性(引脚功能) ADC0832 芯片有 28 条引脚,采用双列直插式封装。下面说明各引脚功能。 IN0IN7:8 路模拟量输入端。 2-12-8:8 位数字量输出端。 ADDA、ADDB、ADDC:3 位地址输入线,用于选通 8 路模
26、拟输入中的一路 ALE:地址锁存允许信号,输入,高电平有效。 START: A/D 转换启动脉冲输入端,输入一个正脉冲(至少100ns 宽) 使其启动(脉冲上升沿使 0809 复位,下降沿启动 A/D 转换)。 EOC: A/D 转换结束信号,输出,当 A/D 转换结束时,此端输出一个高 电平(转换期间一直为低电平)。 OE:数据输出允许信号,输入,高电平有效。当A/D 转换结束时,此端 输入一个高电平,才能打开输出三态门,输出数字量。 CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。 REF(+)、REF(-):基准电压。 Vcc:电源,单一 5V。 -/ GND:地。 3.3.9
27、ADC0832 的工作过程 首先输入 3 位地址,并使 ALE=1,将地址存入地址锁存器中。此地址经 译码选通 8 路模拟输入之一到比较器。 START 上升沿将逐次逼近寄存器复位。 下降沿启动 A/D 转换,之后 EOC 输出信号变低,指示转换正在进行。直到 A/D 转换完成,EOC 变为高电平,指示 A/D 转换结束,结果数据已存入锁存 器,这个信号可用作中断申请。当 OE 输入高电平 时,输出三态门打开, 转换结果的数字量输出到数据总线上。 转换数据的传送 A/D 转换后得到的数据应及时传送给单片机进行处理。 数据传送的关键问题是如何确认 A/D 转换的完成,因为只有确认完成后,才 能进
28、行传送。为此可采用下述三种方式。 (1)定时传送方式 对于一种 A/D 转换其来说,转换时间作为一项技术指标是已知的和固定 的。例如 ADC0832 转换时间为 128s,相当于 6MHz 的 MCS-51 单片机共 64 个机器周期。可据此设计一个延时子程序, A/D 转换启动后即调用此子程序, 延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。 (2)查询方式 A/D 转换芯片由表明转换完成的状态信号,例如ADC0832 的 EOC 端。因 此可以用查询方式,测试 EOC 的状态,即可确认转换是否完成,并接着进行 数据传送。 (3)中断方式 把表明转换完成的状态信号( EOC)作为中
29、断请求信号,以中断方式进 行数据传送。 不管使用上述哪种方式,只要一旦确定转换完成,即可通过指令进行数 据传送。首先送出口地址并以信号有效时, OE 信号即有效,把转换数据送 上数据总线,供单片机接受。 3.3.10 ADC0832 与单片机的接口电路 ADC0832 模数转换器与 AT89C51 单片机的接口电路如图 3-3-10 所示 -/ 图 3-3-10 ADC0832 与 AT89C51 单片机接口电路 3.4 土壤湿度检测模块 湿度检测原理图如图 3.4.1 所示 图 3.4.1 湿度检测原理图 原理阐述:土壤湿度传感器采用 FC-28,土壤湿度传感器由不锈钢探针 和防水探头构成,
30、可长期埋设于土壤和堤坝内使用,对表层和深层土壤进行 墒情的定点监测和在线测量。与数据采集器配合使用,可作为水分定点监测 或移动测量的工具测量土壤容积含水量,主要用于土壤墒情检测以及农业灌 溉和林业防护。J1 是两个插片,插在土壤里, AC 口用来采集电压压值,当 -/ 土壤湿度少时,探针间电阻接近无穷大, AC 值就相当于是 VCC 值,当土壤 湿度大时,此时探针键电阻会减少到几千甚至几百欧,此时AC 的电压会变 化。LM393 是一个比较器,通过 R1 设置一个标准值,当湿度大( AC 值小), OUT 输出低电平,相反输出高电平。 OUT 信号可以直接用来粗略估算湿度大 小。AC 数值送到
31、数模转换模块转换成数字信号。 L1 用来看电路是否接通, L2 湿度小(AC 值大)灭,湿度大(AC 值小)亮。土壤的湿度是由 ADC0832 进行模拟并送入单片机,通过单片机的 I/O 口把检测到的土壤湿度值用 LCD 显示出来。同时,如果系统在智能浇水设置情况下,则该值与设定的浇水上 下限值相比较,若低于下限值,则单片机发出一个控制信号,水泵开始运行 然后开始浇水。若高于上限值时,单片机再发出一个控制信号控制,就会停 止浇水。 3.4.1 比较器 LM393 3.4.1.1 LM393 主要特点: (1)工作电源电压范围宽,单电源、双电源均可工作,单电源:236V,双电 源:118V; (
32、2)消耗电流小,Icc=0.8mA; (3)输入失调电压小,VIO=2mV; (4)共模输入电压范围宽,Vic=0Vcc-1.5V; (5)输出与 TTL,DTL,MOS,CMOS 等兼容; 3.4.1.2 LM393 引脚图及内部框图 图 3-4-1 LM393 引脚图及内部框图 -/ LM393 引脚功能排列表 引出端序 号 功能符号引出端序号功能符号 1 1 输出端 1 OUT1 5 5 正向输入端 2 1N+(2) 2 2 反向输入端 1 1N-(1) 6 6 反向输入端 2 1N-(2) 3 3 正向输入端 1 1N+(1) 7 7 输出端 2 OUT2 4 4 地 GND 8 8
33、电源 VCC LM393 主要参数表 参数名称符号数值单位 电源电压 VCC 18 或 36 V 差模输入电压 VID 36 V 共模输入电压 VI -0.3VCC V 功耗 Pd 570 mW 工作环境温度 Topr 0 to +70 贮存温度 Tstg -65 to 150 LM393 是高增益,宽频带器件,象大多数比较器一样,如果输出端到输入端有 寄生电容而产生耦合,则 很容易产生振荡.这种现象仅仅出现在当比较器改变状 态时,输出电压过渡的间隙.电源加旁路滤波并不能解决这个问题,标准 PC 板的 -/ 设计对减小输入输出寄生电容耦合是有助的.减小输入电阻至小于 10K 将减小 反馈信号,
34、而且增加甚至很小的正反馈量(滞回 1.010mV)能导致快速转换,使得 不可能产生由于寄生电容引起的振荡.除非利用滞后,否则直接插入 IC 并在引脚 上加上电阻将引起输入输出在很短的转换周期内振荡,如果输入信号是脉冲波 形,并且上升和下降时间相当快,则滞回将不需要. 比较器的所有没有用的引脚 必须接地. LM393 偏置网络确立了其静态电流与电源电压范围 2.030V 无关. 通常电源不需要加旁路电容。 3.5 报警及电机驱动 图 3-5 报警及电机驱动电路 4 软件设计 4.1 主程序流程图 在本设计中,整个系统采用模块化设计,这样设计可以使程序看起来清晰 明了,便于阅读以及调试。 -/ 土
35、壤湿度检测及自动浇灌模块的程序结构是主程序以及按键扫描处理、土 壤湿度数据采集、数据处理、显示、电机驱动等子程序组成,如图 4-1-1 所示。 主函数 初始化 函数 按键扫描 程序模块 显示程序 模块 湿度数据 采集模块 数据处理 程序模块 电机驱动 程序模块 图 4-1-1 程序结构图 整个系统操作操作方法为当开启系统后进入主函数,初始化化函数变量及 初始化传感器模块,进入按键扫描函数,通过按键选择系统的工作模式,在自 动控制模式下,调用土壤湿度数据采集函数,采集当前土壤湿度值,并通过数 据处理程序对湿度值进行分析,当湿度值小于预设值时,进入水泵电机驱动函 数,开启灌溉功能,直到达到湿度预设
36、值,停止灌溉。其主程序流程图如图 4- 1-2 所示。 -/ 开始 结束 初始化 采集土壤湿度值 按键设置 执行浇花 满足浇花条件 是 否 图 4-1-2 主程序流程图 表 4-1-2 函数功能表 函数功能 write_com 1602 命令函数 clock_h_l 报警函数 write_data 1602 写数据函数 key_with 按键处理显示函数 -/ 4.2 显示模块 首先初始化 1602 显示,接着显示测试出的值,在通过按键调节显示湿度的 上下限的值。 开始 结束 初始化显示 设置湿度上限 显示湿度上限 设置湿度下限 显示湿度下限 保存数据 保存数据 图 4-2 显示模块 -/ 4
37、.3 AD 转换模块 开始转换 CS=0 i+ 关闭转换 CS=1 CLK 输入时钟脉 选择通 CH0 i=0 传递数据 value i=8 return 数据 value 是 否 图 4-3-1 AD 转换模块 附上 ADC0832 时序图如图 4-3-2 -/ 图 4-3-2 ADC0832 时序图 4.4 湿度检测模块 通过传感器测的的湿度数据存入单片机然后设定的上下限的值做比较,当 测的的值低于下限时,开始浇水,如果测的的值高于下限时,就再与设定的上 限值做比较,当湿度低于上限时就开始浇水,反之则停止浇水。 -/ 开始 停止 浇水 浇水 湿度低于下 限 湿度达到上 限 返回 否 是 否
38、 是 图 4-4 湿度检测模块 5. 结论 本次设计的盆花自动浇水系统以电子类的自动浇花器的工作原理为参考, 运用湿度采集电路及单片机控制技术构成一个土壤湿度采集与控制系统。再用 数字电路控制自动给水系统及时的浇水系统供水。 本次毕业设计让我进一步熟悉了一些元器件的功能和属性。也使我真正接 触到了控制系统的设计,虽然是一个人们日常生活的小系统,但也让我明白了 很多设计上应该注意的问题,比如实用性、经济性以及安装问题等。 -/ 参考文献: 1 李泉溪.单片机原理与应用实例仿真M.北京:北京航天大学出版社,2009.8. 2 李敏.孟臣.数字式温湿度传感器及其应用技术J.电子元器件应用,2004,
39、11. 3 孙荣超.孙德超, 数字温湿度数据记录仪的设计J.现代电子技术,2005.7 4 黄鸿,吴石增.传感器及其应用技术M北京理工大学出版社,2008.7 5 刘灿军.实用传感器M.北京:国防工业出版社,2004,6. 6 孙惠芹.单片机项目设计教程M,北京:电子工业出版社,2009,6 7 宗光华,李大寨.多单片机系统应用技术M.北京:国防工业出版社,2003.10. 8 王芳琴.单片机控制的节水灌溉系统的研究J.华中农业大学. 9 赵振德.单片机原理及实验/实训M.西安:西安电子科技大学出版社,2009. 10 艾永乐,付子仪.数字电子技术基础M.北京:中国电力出版社,2008. -/
40、 谢谢 辞辞 光阴似箭,为期四年的农大学习生涯即将结束。同时,经过两个多月的努 力,我的毕业论文也即将完成。本次论文的撰写,对我而言是一次难得的锻炼 机会。本毕业论文是在我的导师的亲切关怀和悉心指导下完成的。在课题的整 个研究工作期间,我曾遇到不少的困难和挫折,是她给予我的帮助和鼓励,让 我重新获得了继续前进的勇气和信心。在此谨向老师致以衷心的感谢和深深的 敬意! 在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺 利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我 诚挚的谢意! 感谢我的同学和我的室友,在大学四年里,他们给我许多的关心和帮助, 伴我度过许多快乐时
41、光。和他们在一起度过的日子永远值得回味。 感谢各级领导对我的教育培养。他们细心指导我的学习与研究,在此,我 要向诸位老师深深地鞠上一躬。 感谢我的父母亲和所有家人,正是你们的无私爱心和殷殷期盼使得我终于 能够走到今天,你们永远健康快乐就是我最大的心愿。 -/ 附录 1 原理图 -/ 附录 2 参考程序 /*读数模转换数据*/ unsigned char ad0832read(bit SGL,bit ODD) unsigned char i=0,value=0,value1=0; SCL=0; DO=1; CS=0;/开始 SCL=1;/第一个上升沿 SCL=0; DO=SGL; SCL=1;
42、/第二个上升沿 SCL=0; DO=ODD; SCL=1; /第三个上升沿 SCL=0; /第三个下降沿 DO=1; for(i=0;i8;i+) SCL=0; SCL=1; /开始从第四个下降沿接收数据 value=1; if(DO) -/ value1+=0 x80; SCL=1; SCL=0; SCL=1; if(value=value1)/与校验数据比较,正确就返回数据, 否则返回 0 return value; return 0; /*定时器 0 初始化程序*/ void time_init() EA = 1; /开总中断 TMOD = 0X01; /定时器 0、定时器 1 工作方式
43、 1 ET0 = 1; /开定时器 0 中断 TR0 = 1; /允许定时器 0 定时 /*独立按键程序*/ uchar key_can; /按键值 void key() /独立按键程序 static uchar key_new; key_can = 20; /按键值还原 P3 |= 0 xf0; -/ if(P3 /按键消抖动 if(P3 switch(P3 break; /得到 k1 键值 case 0 xd0: key_can = 3; break; /得到 k2 键值 case 0 xb0: key_can = 2; break; /得到 k3 键值 case 0 x70: key_can = 1; break; /得到 k4 键值 e