土壤湿度检测电路概要.docx

上传人:b****6 文档编号:7156029 上传时间:2023-01-21 格式:DOCX 页数:17 大小:411.12KB
下载 相关 举报
土壤湿度检测电路概要.docx_第1页
第1页 / 共17页
土壤湿度检测电路概要.docx_第2页
第2页 / 共17页
土壤湿度检测电路概要.docx_第3页
第3页 / 共17页
土壤湿度检测电路概要.docx_第4页
第4页 / 共17页
土壤湿度检测电路概要.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

土壤湿度检测电路概要.docx

《土壤湿度检测电路概要.docx》由会员分享,可在线阅读,更多相关《土壤湿度检测电路概要.docx(17页珍藏版)》请在冰豆网上搜索。

土壤湿度检测电路概要.docx

土壤湿度检测电路概要

北方民族大学

实训报告

  

 

系(部、中心)电气信息工程学院

姓名莫文涛学号20120588

专业电子信息工程班级121班

同组人员刘丹20120575、杨文华20120606

课程名称专业课程综合实训系列Ⅰ

实训题目名称土壤湿度检测电路

起止时间 2015年3月2日——2015年7月5日

成绩 

指导教师签名 

北方民族大学教务处制

教师评语:

 

报告成绩(30%)

平时成绩(50%)

答辩成绩(20%)

总评成绩

 

土壤湿度检测电路的设计与制作 

【摘要】

本设计主要的内容是土壤湿度检测电路的设计与制作。

该电路的工作原理是由AT89C51单片机和ADC0809组成系统的核心部分,湿度传感器将采集到的数据直接传送到ADC0809的IN端作为输入的模拟信号。

选用湿度传感器和AD转换,电路内部包含有湿度采集、

AD转换、单片机译码显示等功能。

单片机需要采集数据时,发出指令启动A/D转换器工作,ADC0809根据送来的地址信号选通IN3通道,然后对输入的模拟信号进行转换,转换结束时,EOC输出高电平,通知单片机可以读取转换结果,单片机通过调用中断程序,读取转换后的数据。

最后,单片机把采集到的湿度数据经过软件程序处理后送到LED数码管进行显示。

【关键词】湿度传感器\AD\转换\AT89C51

 

目录

一、设计方案选择5

1、方框图5

二、 土壤湿度检测电路的单元电路6

1、湿度采集 6

2、A/D转换与ADC08097

3、AT89C51单片机 10

三、源程序15

四、LED数码管 16

五、软件调试17

六、 安装与调试 18

七、元器件清单20

八、系统仿真20

九、心得体会 22

 

一、设计方案选择

方案一:

可利用湿度传感器采样土壤中的湿度信号,以提供给显示电路部分,关于湿度含量可采用ADC的方法将模拟信号转换成数字信号,然后再用译码器将转换后的数字信号提给显示电路实现显示,ADC转换电路所需脉冲由555构成的多谐振荡器来提供。

1、方框图

方案二:

根据传感器采集土壤湿度,提供给ADC0809进行模数转换,转换出的数字信号送给AT89C51单片机进行实时处理,同时由单片机控制ADC0809的转换开始与结束,单片机把处理后的数据经过处理送达LED数码管进行显示。

方案选择:

在以上两种方案中,方案一中的译码器74HC4511存在消隐状态,即当ADC转换后的数据超过1001时,对于1010~1111六个代码,译码器输出均为低电平,显示器不能正常显示出每一单位下的湿度值。

所以该方案的精确度不及方案二,而且方案二中单片机控制ADC转化速度远远快于方案一,这种方法的工作速率较高,而且精度较高。

所以最终选择方案二作为本次毕业设计的制作方案。

二、 土壤湿度检测电路的单元电路 

1、湿度采集 

传感器是能响应规定的被测物理量,并按照一定的规律转换成为可用信号输出的器件或装置。

它通常由直接响应于被测物理量的敏感元件和产生可用信号输出的转换元件及相应的电子电路组成。

 

传感器的分类:

 

按构成分可分为基本型传感器、组合型传感器和应用型传感器; 

按机理可分为结构型传感器,物理性传感器、混合型传感器和生物型传感器; 按作用形式可分为主动型传感器和被动传感器; 

按变换工作能量的供给形式可分为能量变换型传感器和能量控制型转换器; 按输出信号形式分为温度、压力、湿度、流量、流速、磁场和光通量等传感器。

 

湿度的采集可以用湿度传感器来实现。

将湿度传感器看作可调变阻器,当湿度传感器采集到湿度时,电阻值发生变化,湿度最小时的电阻值为10K,湿度最大时为0.1Ω。

变化的幅度是根据湿度传感器采集到的湿度大小而定。

随着电阻值的变化,电路的输出电压也跟着变化。

调节电阻值的大小,可得到想要的电压,满足电路的需求。

2、A/D转换与ADC0809 

A/D转换器用来将模拟电压信号转换成一组相应二进制数码输出。

由于A/D转换器的输入量是随时间连续变化的模拟信号,而输出是随时间断续变化的离散数字信号,因此在转换过程中,首先要对模拟信号进行采样、保持,再进行量化、编码。

 

所谓采样,就是在一个微小时间内对模拟信号进行取样,把一个时间上是连续的信号变换为对时间离散的信号。

采样结束后,再将此取样的模拟信号保持一段时间,使A/D转换器有充分时间进行A/D转换。

这就是采样、保持电路的基本作用。

 

任何一个数字量的大小都是以某个最小数量单位的整数倍来表示的。

因此,在用数字量表示采样电压时,也必须把它化成这个最小数量单位的整数倍,这个转化过程就叫做量化。

 

所规定的最小数量单位叫做量化单位,用表示。

显然,数字信号最低有效位中的“1”所表示的数量大小,就等于。

一般被转化的模拟电压不可能被整除,这种因素引起的误差称为量化误差。

 

量化误差又称为分辨率。

ADC输出二进制位数越多,则分辨率越高,转换精度也越高。

 

分辨率常以数字信号最低有效位中的“1”所对应的电压值表示。

 

例如10位ADC,当满度输入模拟电压为5V,则最低有效位“1”所对应的输入电压为:

 

8位ADC为

显然,10位ADC的分辨率比8位ADC高。

因此,分辨率有时也可用A/D转换器的输出位数n表示。

 

ADC0809是采样频率为8位的、以逐次逼近原理进行模—数转换的器件。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

 

1.主要特性 

1)8路8位A/D转换器,即分辨率8位。

  

2)具有转换起停控制端。

  

3)转换时间为100μs 

4)单个+5V电源供电  

5)模拟输入电压范围0~+5V,不需零点和满刻度校准。

  

6)工作温度范围为-40~+85摄氏度 

7)低功耗,约15mW。

  

2.内部结构  

ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图13.22所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近  

3.外部特性(引脚功能)  

ADC0809芯片有28条引脚,采用双列直插式封装,如图2-1所示。

下面说明各引脚功能。

IN0~IN7:

8路模拟量输入端。

 2-1~2-8:

8位数字量输出端。

 

ADDA、ADDB、ADDC:

3位地址输入线,用于选通8路模拟输入中的一路 ALE:

地址锁存允许信号,输入,高电平有效。

  

START:

 A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。

  

EOC:

 A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

  

OE:

数据输出允许信号,输入,高电平有效。

当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

 

CLK:

时钟脉冲输入端。

要求时钟频率不高于640KHZ。

  REF(+)、REF(-):

基准电压。

  Vcc:

电源,单一+5V。

  GND:

地。

  

         

ADC0809的工作过程是:

首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。

此地址经译码选通8路模拟输入之一到比较器。

START上升沿将逐次逼近寄存器复位。

下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。

直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。

当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。

 

3、AT89C51单片机 

单片机是单片微型计算机的简称。

所谓单片机,通俗来讲,就是把中央处理器CPU、存储器、定时器、I/O接口电路等一些计算机的主要功能部件集成在一块集成电路芯片上的微型计算机。

单片机特别适合控制领域,故又称为微控制器MCU,单片机只要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

 

(1).单片机的时钟电路 

时钟电路用于生产单片机工作所需要的时钟信号,而时序所研究的是指令执行中各地址信号之间的相互关系。

单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。

 

(2).单片机的复位电路 

单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作。

无论是单片机刚开始接上电源时,还是断电后或者发生故障后都要复位,单片机复位的条件是:

必须使RES/Vpd或者RST引脚(9脚)加上持续两个周期以上的高电平。

 

(3).单片机的编程 

该方案中主要是利用单片机的外部接口电路和单片机软件编程实现的,所以程序的正确可行是实现该方案的必要条件,编写程序时主要利用的软件是Keil C51编程软件,

它是集编程、编译、仿真于一体,支持汇编,PLM语言和C语言的程序设计软件。

 

MCS-51单片机研制于1980年,它是一款8位单片机。

标准的MCS-51有32个双向I/O口拥有全双工UART,两组16位定时器,片内时钟电路。

RAM和ROM都可以扩展至64KB。

MCS-51单片机的引脚如图所示,标准的MCS-51单片机是40引脚双列直插式集成电路芯片。

 

(4)单片机最小应用系统

图2-3 单片机最小应用系统

(5) 单片机的引脚说明 

MCS单片机都采用40引脚的双列直插封装方式。

图2-4为引脚排列图, 40条引脚说明如下:

 

图2-4 单片机的引脚排列图

1)主电源引脚Vss和Vcc ① Vss接地 

② Vcc正常操作时为+5伏电源 2、外接晶振引脚XTAL1和XTAL2 

① XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。

当采用外部振荡器时,此引脚接地。

     

② XTAL2内部振荡电路反相放大器的输出端。

是外接晶体的另一端。

当采用外部振荡器时,此引脚接外部振荡源。

 

3)控制或与其它电源复用引脚RST/VPD,ALE/PROG,PSEN和EA/Vpp 

① RST/VPD  当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位 在Vcc掉电期间,此引脚可接电源  图2-9 8051引脚排列图,上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。

 

② ALE/PROG   正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号。

因此,它可用作对外输出的时钟,或用于定时目的。

但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。

   对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(PROG功能) 

③ PSEN 外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,PSEN在每个机器周期内两次有效。

PSEN同样可以驱动八LSTTL输入。

 

④ EA/Vpp 、  EA/Vpp为内部程序存储器和外部程序存储器选择端。

当EA/Vpp为高电平时,访问内部程序存储器,当EA/Vpp 为低电平时,则访问外部程序存储器。

 

对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。

 

4)输入/输出引脚P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7。

 ① P0口(P0.0 - P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。

 

② P1口(P1.0 - P1.7)是一个带有内部提升电阻的8位准双向I/O口。

能驱动(吸收或输出电流)四个LSTTL负载。

 

③ P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。

P2口可以驱动(吸收或输出电流)四个LSTTL负载。

 

④ P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O口。

能驱动(吸收或输出电流)四个LSTTL负载。

 

    (6) 单片机的中断指令 

在CPU和外设交换信息时,存在着快速CPU和慢速外设间的矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常采用中断技术。

 

CPU和外设并行工作,当外设数据准备好( 或有某种突发事件发生)时向CPU提出请求,CPU暂停正在执行的程序转而为该外设服务(或处 理紧急事件),处理完毕再回到原断点继续执行原程序。

 

中断优先级:

当有多个中断源同时 向CPU申请中断时,CPU优先响应最需紧急处理的中断请求,处理完毕再响应优先级别较低的 ,这种预先安排的响应次序。

  

中断的嵌套:

在中断系统中,高优先级的 中断请求能中断正在进行的较低级的中断源处理, 

1)中断技术是实时控制中的常用技术,51系列单片机有三个内部中断,二个外部中断。

所谓 外部中断就是在外部引脚上有产生中断所需要的信号。

 

每个中断源有固定的中断服务程序的入口地址(称矢量地址或向量地址)。

当CPU响应中断以 后单片机内部硬件保证它能自动的跳转到该地址。

因此,此地址是应该熟记的,在汇编程序 中,中断服务程序应存放在正确的向量地址内。

(或存放一条转移指令);而在C语言中是靠Interrupt n的关键字n自动设置的。

 

2)单片机的中断是靠内部的寄存器管理的,这就是中断允许寄存器IE,中断优先权寄存器IP ,必须在CPU开中断即开全局中断开关EA,开各中断源的中断开关,CPU才能响应该中断源的 中断请求,其中缺一不可。

 

3)从程序表面看来,主程序和中断服务程序好象是没有关连的,只有掌握中断响应的过程, 才能理解中断的发生和返回,看得懂中断程序,并能编写高质量中断程序。

三、源程序

#include

#defineuintunsignedint

#defineucharunsignedchar

ucharcodeLEDData[]=

{

0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f

};

sbitOE=P1^0;

sbitEOC=P1^1;

sbitST=P1^2;

sbitCLK=P1^3;

voidDelayMS(uintms)

{

uchari;

while(ms--)

{

for(i=0;i<120;i++);

}

}

voidDisplay_Result(uchard)

{

P2=0xf7;

P0=LEDData[d%10];

DelayMS(5);

P2=0xfb;

P0=LEDData[d%100/10];

DelayMS(5);

P2=0xfd;

P0=LEDData[d/100];

DelayMS(5);

}

voidmain()

{

TMOD=0x02;

TH0=0x14;

TL0=0x00;

IE=0x82;

TR0=1;

P1=0x3f;

while

(1)

{

ST=0;

ST=1;

ST=0;

while(EOC==0);

OE=1;

Display_Result(P3);

OE=0;

}

}

voidTimer0_INT()interrupt1

{

CLK=!

CLK;

}

四、LED数码管 

在本次设计中采用的是4段LED数码管来显示湿度值,实际只用到3段,LED具有功耗低、亮度高、视角大、线路简单、耐震及寿命长等有点。

它由4个发光二极管组成,其中7个按“8”字型排列,另一个为圆点形状,位于右下角,常用语显示小数点,把8个发光二极管连接在一起,公共端接高电平,叫公阳极接法,相反,公共端接低电平叫共阴极接法。

本次设计我才用的是共阴接法,当发光二极管导通时,相应的一段笔画或点就发亮,从而形成不同的发光字符。

驱动每个发光二极管的工作电流约 10mA,工作压降约 1.5V 。

 

根据设计要求,显示电路要显示最大湿度值100,所以至少用到3位LED数码管。

如图2-6,利用单片机的I/O口驱动LED数码管的亮灭。

设计中由P0口驱动段码显示,即显示字符,由P2口选择LED位码,即选择点亮哪位LED来显示。

五、软件调试

上电时对系统中进行检测是单片机程序中的一个良好设计。

在硬件设计时也应该细细考虑将各个使用到的芯片、接口设计成容易使用软件进行测试的模式。

很多有经验的单片机设计者都会在系统上电时(特别是第一次上电时)进行全面的检测,或者更进一步,将系统的运行状态中分为测试模式和正常运行模式,通过加入测试模式对系统进行详细的检测,使得系统的批量检测更为方便容易。

另外要注意的是,一个简单明了的故障显示界面也是颇要费得心思的。

比如:

系统的外部RAM(数据存储器)是单片机系统中常用的器件。

外部RAM如果存在问题,程序通常都会成为无法控制。

因此,程序在启动时(至少在第一次上电启动时)一定要对外部RAM进行检测。

另外,在仿真前要做好充分的准备。

单片机硬件仿真器给单片机开发者带来了极大的方便,同时也很容易造成人的依赖性。

很多时候,没有仿真器却能促使工程师写出更高质量的程序。

在硬件仿真调试之前,下面准备工作将是必要的:

(1)程序编完后,对代码仔细逐行检查。

检查代码的错误,建立自己的代码检查表,对经常易错的地方进行检查。

检查代码是否符合编程规范。

(2)对各个子程序进行测试。

测试的方法:

用程序测试程序,编制一个调用该子程序的代码,建立要测试子程序的入口条件,再看看它是否按预期输出结果。

(3)如果代码有修改,再次对代码进行检查。

六、 安装与调试 

  在安装前要做好检查工作,确保元器件质量功能可靠,尤其要注意晶体管的型号,电容器的耐压和极性,按照原理图组装电路,使元件安装的位置、极性正确、布局合理;整机清洁无污物,导线不杂乱。

由于电路的要求,所以我按照单元电路逐级安装,逐级调试然后联合调试的方法。

在安装调试过程中用到的仪器主要有示波器,万用表。

 

 1、安装与调试过程记录 

首先安装的是ADC0809为主的采集与转换电路,电路简单很快就安装完成。

接下来就是连接单片机的外围复位和时钟电路,我使用的晶振是12MHz的,所以单片机的机器周期就是1us.由于复位分为两种复位方式,自动上电复位和手动按键复位,我在设计中采用的是自动复位,所以用的极性电容是20uF/25V的,复位电阻采用的8.2K的。

接下来我连接的是显示电路,由于我设计中采用的是4段数码管,这种数码管的8个显示段码和4个公共引脚,这4个引脚分别各控制一个“8”字,我采用单片机的P0口控制数码管的a、b、c、d、e、f、g、dp,依次对应的是P0.0~P0.7,四个公共端接在单片机的P2口的P2.1,P2.2,P2.3,因为在设计电路中要求我显示的湿度值是100%,所以我就用到3段数码管。

接着连接的是ADC0809与AT89C51单片机之间的线路了,我根据电路图用单片机的P0口来连接ADC0809的控制引脚和时钟脉冲输入端,依次是P1.0连接OE,P1.1连接EOC,P1.2连接ALE和START端,P1.3就是时钟脉冲的输出端,给ADC0809提供时钟脉冲,剩下的3个脚分别接地址码输入端。

接下来连接的是D7-D08位数字量输出端,分别对应单片机的P3.0-P3.7端口。

就这样,安装电路阶段基本完成的了,下面就要进行调试阶段。

2、参数测试

图3-1 时钟脉冲波形图

幅度为4.96V,周期为1.55us,频率为635.16KHZ.电路通电后没湿度时的电压为2.4 V,有湿度时的最大电压为4.8V

七、元器件清单

元器件清单

名称

型号

数量

A/D转换芯片

ADC0809

1

单片机

AT89C51

1

四位数码管

1

晶振

12MHz

1

电阻

100

8

电阻

10k

1

温度传感器

1

电容

22pf

2

极性电容

10uf-25V

1

八、系统仿真

 

九、心得体会 

在这次毕业设计中,我有一次的温习了以前学习的专业基础知识,给即将走向工作岗位的我又上了一堂精彩的课。

通过这次毕业设计,掌握了单片机、ADC0809、数码管、电容等元器件的工作原理及其应用;熟练的使用万用表、示波器等相关实验仪器和设备,能使用相关软件设计电路图并进行仿真;让我了解了设计电路的程序,使我对模拟电子、数字电子技术在实践中的应用有了更深刻的理解;对Protues有了深入的了解,能独立完成电路图的绘制。

在设计电路的过程中,充分了解了各元器件的功能作用,把课本知识变得生动有趣,当实验现象出现的那一刻,心中非常的激动, 

由于本设计使用用的是高效的51系列单片机作为核心的测量系统,以及高精度、高速度、高抗干扰的A/D转换器,是的本次湿度采集测量系统具有精度高,灵敏度强,性能可靠、电路简单、成本低的特点。

 

因为我这次设计采用的是单片机为主的湿度检测,所以要求硬件和软件相结合,两者必须完整配合,协调一致。

在编程过程中遇到很多麻烦,比如在单片机给ADC0809的CLK引脚提供时钟脉冲,要求脉冲频率在640KHz左右,所以就要多次的调试程序以提供出合适的脉冲,还有就是仿真与实际电路存在一定的差异,所以要根据实际的测量值来调试程序。

所以说,坐而言不如立而行,对于这些电路还是应该自己动手实际操作才会有深刻理解。

在设计中除了学会许多专业知识外,在遇到困难时,积极的去请教我的指导老师,我通过看现有的教材,去图书馆查阅资料,去网上搜索相关信息这些方式,不仅完成了我的毕业设计,而且大大增强了我的自学能力和求实心里,更重要的是我拓展了思路,开阔了视野,活跃了思想。

学会了理论联系实际。

 

设计完成了,这也意味着大学生活即将结束,在这个阶段,我在学习上和思想上都受益匪浅。

 

【参考文献】 

【1】杨毅德:

《模拟电路》,重庆大学出版社,2006年,第二版 

【2】廖先芸:

《电子技术实践与训练》,高等教育出版社,第二版 

【3】刘国巍:

《数字电子技术基础》,国防科技大学出版社,2008年,第一版 

【4】张永格 何乃味:

《单片机C语言应用技术与实践》,北京交通大学出版社,2010年,第二版 

【5】李文方:

《单片机原理与应用》,哈尔滨工业大学出版社,2010年,第一版 

【6】 XX网 

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1