1 / 23
文档名称:

土壤湿度检测及自动浇水.pdf

格式:pdf   页数:23页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

土壤湿度检测及自动浇水.pdf

上传人:119060444 2016/5/15 文件大小:0 KB

下载得到文件列表

土壤湿度检测及自动浇水.pdf

文档介绍

文档介绍:湿度检测及自动浇水信息工程廖俊杰2013-12-30 摘要本设计以适度检测和自动浇水装置为核心,实现智能浇水的功能。本系统以无线传输为传输媒介,利用STC12C5A60S2和 STC90C516+单片机程序实现两个模块的的无线通信,借助单片机控制ADC0804 芯片实现模数转换。经过检测,各个模块可以实现各个功能,但是在实验过程中无线模块通信不是很灵敏。一、任务系统组成湿度检测模块: 土壤的湿度检测是通过测量电压,根据采集到的电压数值转换成湿度数值。这样做的优点在于测量电压电路简单,可行性高。模数转换模块:模数芯片采用的是 ADC0804,将采集到的电压转化成八进制的二进制数,选择 ADC0804 原因在于我曾经使用过该芯片,对该芯片的功能有所了解。无线模块:无线模块我们采用的是 NRF24L01无线模块,该模块原理简单, 容易实现。抽水机模块:由于抽水机的动力的规格要求比较低,所以我们采用的是直流电机驱动。主机模块: 我们采用两个单片机( 分别控制无线的发送和接收), STC12C5A60S2和STC90C516+单片机的功能就能满足需求,价格低廉,所以我们考虑选择该两种单片机。显示模块:我们采用 1602显示, 1602 显示简单,价格低廉,功能满足我们的需求,优先考虑。二、电路与程序设计 电路的设计 系统总体框图 湿度检测子系统电路原理湿度检测原理图原理阐述:J1是两个插片,插在土壤里, 根据我们事先的工作我们测出了一般较湿润的土壤在我们固定的探针间的电阻在几百欧,AC 口用来采集电压压值,当土壤湿度少时,探针间电阻接近无穷大,值,当土壤湿度大时,此时探针键电阻会减少到几千甚至几百欧,此时AC的电压会变化。LM393是一个比较器,通过R1 设置一个标准值,当湿度大(AC值小),OUT 输出低电平, 相反输出高电平。OUT 信号可以直接用来粗略估算湿度大小。AC 数值送到数模转换模块转换成数字信号。L1用来看电路是否接通,L2湿度小(AC 值大)灭,湿度大(AC值小)亮。单片机无线接收模块无线发送模块单片机模数转换模块显示模块湿度数据采集模块电机驱动模块 :ADC0804芯片是八进制的二进制转化,进度达到1/256,该芯片自身需要一个时钟,有CS、RD、WR三个由单片机控制的控制端,以此来生成读取数据转化数据的时序信号。当读取完成之后INTR口电平自动拉高。转化出来的八位二进制数与单片机的P1口连接。 :,因此单片机的高电平无法驱动该电机, 但是普通的三极管的电路放大又无法达到 , 因此, 我们本实验采用了继电器来控制电机, 当单片机的控制电压为0 时,LED灯亮,继电器工作,电机工作。 无线模块和单片机模块子系统电路原理无线发送模块和单片机模块原理图无线接收模块和单片机模块原理图原理阐述: 无线模块已经把发送和接收整合到一起, 每个模块有六个接口,这些接口由单片机来控制无线的发送和接收。 :R2电阻是调节显示屏的亮度,RS、WR、E是1602的控制端, DB0-DB7是数据的输入。 程序的设计 程序功能简述与设计思路(1)ADC0804转换程序#define addata P1 //AD数据口 sbit int1=P3^3; //定义管脚功能 sbitcs=P3^2; //使能端 sbit wr=P3^6; //写端口 sbit rd=P3^7; //读端口 unsigned char adc0804( void ) //读AD0804子程序{ rd=1; wr=1; int1=1; //读ADC0804 前准备 addata=0xff; //P1全部置一准备 cs=0; wr=0; wr=1; //启动ADC0804开始测电压 while(int1==1); //查询等待A/D转换完毕产生的 INT信号 rd=0; //开始读转换后数据_nop_(); _nop_(); rd=1;cs=1; //读数完毕} ADC0804时序图(以下时间计算是在ADC0804时钟为6065KHz条件下) 原理简述: 步骤 S0: CS=0、 WR=0、 RD=1(由 CPLD 发出信号要求 ADC0804开始进行模拟/数字信号的转换)。步骤 S1: CS=1、 WR=1、 RD=1( ADC0804 进行转换动作,转换完毕后 INTR将高电位降至低电位,而转换时间>100u