ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:186.62KB ,
资源ID:4221870      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4221870.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的自动节水灌溉系统.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的自动节水灌溉系统.docx

1、基于单片机的自动节水灌溉系统 数理与信息工程学院应用系统设计 题 目: 基于单片机的自动节水灌溉系统 专 业: 班 级: 姓 名: 学号: 指导老师: 成 绩: 第1节 引 言31.1 节水灌溉系统概述31.2 本设计任务和主要内容4第2节 系统主要硬件电路设计52.1 单片机控制系统原理52.2 单片机主机系统电路52.2.1时钟电路6 2.2.2复位电路62.2.3数据存储器的扩展电路62.3 数据采集处理电路72.4 LED显示系统电路82.5 超限报警电路10第3节 系统软件设计11 3.1 系统主程序设计113.2 采样子程序设计123.3数据处理13 3.3. 1数字滤波技术13

2、3.3.2标度变换15 3. 3. 3 BCD转换18 3. 4 LED动态显示程序18第4节 结束语21参考文献22基于单片机的自动节水灌溉系统 第1节 引 言自动控制节水灌溉技术的高低代表着农业现代化的发展状况,灌溉系统自动化水平较低是制约我国高效农业发展的主要原因。单片机控制的滴灌节水灌溉系统,该系统可对不同土壤的湿度进行监控,并按照作物对土壤湿度的要求进行适时、适量灌水,其核心是单片机和PC机构成的控制部分,主要对土壤湿度与灌水量之间的关系、灌溉控制技术及设备系统的硬件、软件编程各个部分进行实现。 单片机控制部分采用AT89C51单片机为核心,主要由土壤湿度传感器,信号处理电路,显示电

3、路,输出控制电路,故障报警电路等组成,软件选用汇编语言编程。单片机可将土壤湿度传感器检测到的土壤湿度模拟量转换成数字量,显示于LED显示器上。该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。1.1 节水灌溉系统概述 生命之起源,水为必要条件,没有了水,地球上的生命将会枯竭。 随着21世纪的到来,能源危机将接踵而至。比能源危机更可怕的是,作为人类生命之源的水的短缺到了前所未有的程度,这一状况还将随着时间的推移和社会的发展继续恶化。水资源危机已成为全球性的突出问题,利用科技手段缓解这一危机,将是人类主要的出路。农业是人类社会最古老的行业,是各行各业的基础,也是人类顿以生存的最重要的行业

4、。农业的发展从长远来看很重要,一是水的问题,二是科技的问题。农业的根本出路在科技,在教育。由传统农业向现代化农业转变,由粗放经营向集约经营转变,必须要求农业科技有一个大的发展,进行一次新的农业技术革命。农业与工业、交通等行业相比仍然比较落后,农业灌溉技术尤其落后。灌溉系统自动化水平较低是制约我国高效农业发展的主要原因。传统的灌溉模式自动化程度极低,基本上属粗放的人工操作,即便对于给定的量,在操作中也无法进行有效的控制,为了提高灌溉效率,缩短劳动时间和节约水资源,必须发展节水灌溉控制技术。 现代智能型控制器是进行灌溉系统田间管理的有效手段和工具,它可提高操作准确性,有利于灌溉过程的科学管理,降低

5、对操作者本身素质的要求。除了能大大减少劳动量,更重要的是它能准确、定时、定量、高效地给作物自动补充水分,以提高产量、质量,节水、节能。 现代灌溉控制器的研究使用在我国农、林、及园艺为数不多,与发达国家相比,有较大的差距,还基本停留在人工操作上,即使有些地方搞了一些灌溉工程的自动化控制系统,也是根据经验法来确定每天灌溉次数和每次灌溉量,如果灌溉量与作物实际需水量相比太少,便不能有效的促进作物健康成长;而灌溉量太多,肥水流失,又会造成资源浪费,同时传统的灌溉法还需要相关专家的实时观察并经验指导生产,劳动生产率低,这也不能与现代化农业向优化、高效化方向发展要求同步。 随着计算机技术和传感器技术的迅猛

6、发展,计算机和传感器的价格日益降低,可靠性日益提高,用信息技术改造农业不仅是可能的而且是必要的。用高新技术改造农业产业,实施节水灌溉已成为我国农业乃至国民经济持续发展带战略性的根本大事。本文旨在设计一套能对作物生长的土壤湿度进行自动监控的系统,它能对作物进行适时、适量的灌水,起到高效灌溉,节水、节能的作用。1.2 本设计任务和主要内容本论文主要研究单片机控制的滴灌节水灌溉系统,分别对土壤湿度与灌水量之间的关系、灌溉控制技术及系统设备的软、硬件各个部分进行了研究。主要内容如下: 1.根据滴灌技术的特点,进行节水灌溉控制系统的整体研究与设计。 2.针对土壤湿度难以用精确的数学模型描述的特点,采用模

7、糊控制理论,对这一理论进行了深入的研究,重点研究双输入单输出的模糊控制方式。3. LED显示土壤湿度值,在灌水期间以倒计时的方式显示灌水剩余时间。 4.当土壤湿度值低于设定的最低值时,系统可自动报警。第2节 系统主要硬件电路设计2.1 单片机控制系统原理图2 单片机控制系统原理框图22 单片机主机系统电路AT89C51单片机是51系列单片机的一个成员,是8051单片机的简化版。内部自带2K字节可编程FLASH存储器的低电压、高性能COMS八位微处理器,与Intel MCS-51系列单片机的指令和输出管脚相兼容。由于将多功能八位CPU和闪速存储器结合在单个芯片中,因此,AT89C2051构成的单

8、片机系统是具有结构最简单、造价最低廉、效率最高的微控制系统,省去了外部的RAM、ROM和接口器件,减少了硬件开销,节省了成本,提高了系统的性价比。图3 单片机主机系统图2.2.1时钟电路 单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:内部振荡和外部振荡。MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,如图3所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反

9、馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。 图3中外接晶体以及电容C2和C1构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为30P左右,晶振频率选6MHz oRESET2.2.2复位电路 为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为高电平,单片机就处于循环复位状态。复位后系统将输入/输出(1/0)端口寄存器置为FFH

10、,堆栈指针SP置为07H, SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。复位操作有两种情况,即上电复位和手动(开关)复位。本系统采用上电复位方式。 图3中R9和Cl组成上电复位电路,其值R取为1KQ, C取为1pF.2.2.3数据存储器的扩展电路 AT89C51单片机外接数据RAM时,P2口输出存储器地址的高8位,PO口分时输出地址的低8位和传送指令字节或数据。PO口先输出低8位地址信号,在ALE有效时将它锁存到外部地址锁存器中,然后PO口作为数据总线使用,此处地址锁存器选用74LS373,实际电路图连接如图4所示。图4数据存储

11、器的扩展电路2.3数据采集处理电路 ADC0809是一种8位逐次逼近式A/D转换器,内部具有锁存控制的8路模拟开关,外接8路模拟输入端,可同时对8路0-5V的输入模拟电压信号分时进行采集转换,本系统只用到INO和INl两路输入通道。ADC0809转换器的分辨率为8位,最大不可调误差小于士1LSB,采用单一+5V供电,功耗为15mW,不必进行零点和满度调整。由于ADC0809转换器的输出数据寄存器具有可控的三态输出功能,输出具有TTL三态锁存缓冲器,故其8位数据输出引脚可直接与数据总线相连。A/D转换器需外部控制启动转换信号方能进行转换,这一启动转换信号可由CPU提供,不同型号的A/D转换器,对

12、启动转换信号的要求也不同,分脉冲启动和电平启动两种,ADC0809采用脉冲启动转换,只需给A/D转换器的启动控制转换的输入引脚(START)上,加入正脉冲信号,即启动A/D转换器进行转换,转换开始后,转换结束信号输出端(EOC)信号变低,转换结束时,EOC返回高电平,以通知主机读取转换结果的数字量,这个信号可以作为A/D转换器的状态信号供查询,也可以用作中断请求信号。图5数据采集处理电路本系统中ADC0809与AT89C51单片机的接口如图5所示,采用等待延时方式。ADC0809的时钟频率范围要求在10-1280kHz , AT89C51单片机的ALE脚的频率是单片机时钟频率的1/6,因此当单

13、片机的时钟频率采用6MHz,ADC0809输入时钟频率即为CLK=1MHz,发生启动脉冲后需延时100Us才可读取A/D转换数据。 如图5连接方式,ADC0809的8位数据输出引脚可直接与数据总线相连,地址译码引脚A, B, C分别与74LS373的A, B, C相连,以选通INO- IN7中的一个通道。AT89C51的p 2.6作为片选信号,在启动AM转换时,由单片机的写信号WR和p2.。控制ADC的地址锁存和转换启动。由于ALE与START连在一起,因此ADC0809在锁存通道地址的同时也启动转换,在读取转换结果时,用单片机的读信号RD和p2.。引脚一级或非门产生的正脉冲作为OE信号,用以

14、打开三态输出锁存器。24 LED显示系统电路微机化测控系统中常用的测量数据的显示器有发光二极管显示器(简称LED或数码管)和液晶显示器(简称LCD)。这两种显示器都具有线路简单、耗电少、成本低、寿命长等优点,本系统输出结果选用4个LED显示。数码管有共阴共阳之分,本系统采用8段共阴型LED,其原理图如图6所示,每位数码管内部有8个发光二极管,公共端由8个发光二极管的阴极并接而成,正常显示时公共端接低电平(GND),各发光二极管是否点亮取决于a-dp各引脚上是否是高电平。 LED数码管的外形结构如图6,外部有10个引脚,其中3, 8脚为公共端也称位选端,其余8个引脚称为段选端,当要使某一位数码管

15、显示某一数字(0-9中的一个)必须在这个数码管的段选端加上与数字显示数字对应的8位段选码(也称字形码),在位选端加上低电平即可。由于系统要显示的内容比较简单,显示量不多,所以选用数码管既方便又经济。LED有共阴极和共阳极两种。如图6所示。二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)ag,另一个小数点为dp发光二极管。当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被损坏,需外加限流电阻。图6 LED数码管结构原理图:

16、符号和引脚 共阴极 共阳极数码管显示器有两种工作方式,即静态显示方式和动态扫描显示方式。为节省端口及降低功耗,本系统采用动态扫描显示方式。动态扫描显示方式需要解决多位LED数码管的“段控”和“位控”问题,本电路的通过P1口实现:而每一位的公共端,即LED数码管的“位控”,则由P3口控制。这种连接方式由于多位字段线连在一起,因此,要想显示不同的内容,必然要采取轮流显示的方式,即在某一瞬间,只让其中的某一位的字位线处于选通状态,其它各位的字位线处于断开状态,同时字段线上输出这一位相应要显示字符的字段码。在这一瞬时,只有这一位在显示,其他几位则暗。在本系统中,字位线的选通与否是通过PNP三极管的导通

17、与截止来控制,即三极管处于“开头”状态。因AT89C51单片机I/O口资源有限,必须对其Il0口进行扩展才能满足实现系统功能,如图7所示为用8155扩展1/0口的4个8位LED动态显示器,显示扫描由程控实现,其中PA口输出字型码,PC口输出位选信号即扫描信号,图中片选线CE和AT89C51的P2.7口相连,IO/ M选通输入线与P2.4口相连,该系统中当P2.7=0且P2.4 =1时,选中8155芯片内三个I/O口。相应的端口地址分配如表4-1:表4-1 8155端口地址分配图7 显示电路2.5超限报警电路 为了在某些紧急状态或反常状态下,能使操作人员不致忽视,以便及时处理,往往需要有某种更能

18、引起人们注意提起警觉的报警信号产生,这种报警信号通常有三种类型:闪光报警、鸣音报警、语音报警,本系统采用简单易行的声光报警电路。 如图8所示报警电路,报警设备选用压电式蜂鸣器,它约需要10mA的驱动电流,只需在其两条引线上加3一15V的直流电压,即可产生3KHz左右的蜂鸣声音,图中蜂鸣器的一端接在高电平+SV,另一端接Pl.0,在初态Pl.0始终输出高电平1,当需要报警时,程序对其端口清零即可,声音的长短可用延时程序控制实现。图中接入的发光二极管LED为超高线报警器,当P1.1端输出为低电平“0”时,二极管导通,灯亮发出报警信号图8报警电路第3节 系统的软件设计系统软件程序设计主要包括:主程序

19、设计,采样子程序设计,数据处理程序,显示子程序,串口通信程序等。各芯片地址编码为:RAM6116: OFOOOH-OF7FFH 81551/0口:7FF8H - 7FFDHADC0809: OBFF8H-OBFFFH31 系统主程序设计ADTURNO EQU 21H ;INO通道A/D转换数据存放首址ADTURN1 EQU 2CH ;IN1通道A/D转换数据存放首址LINEADRO EQU 37H ;1N0采集数据经滤波处理数据存放地址LINEADR1 EQU 38H ;INl采集数据经滤波处理数据存放地址 LINEADR EQU 39H ;平均值存放地址 HUMID EQU 3BH ;标度变

20、换后的湿度值存放地址 BCDADR EQU 3CH ;BCD转换后的湿度值存放地址 HUMADR EQU 3DH ;上位机传来的湿度值存放地址 TIMEADR EQU 3EH ;上位机传来的时间值存放地址 T100US EQU 256-50 ;延时参 Cl00US EQU 3FH SHOWADR EQU 40H ;显示区数据存放首址 ORG OOOOH SJMP START ORG OOOBH ;定时器0中断服务程序入口 Limp TOINT ORG 0023H ;串行I/O中断服务程序入口 Limp SERVE ORG 0050HSTART: MOV SP, #50H ;设置堆栈 MOV H

21、UMADR, #OFFH SETB OD3H ;选中寄存器3 SETS OD4H MOV R0, #HUMADR CLR OD3H ;选中寄存器0 CLR OD4HMov TMOD, #22H;主程序初始化Mov TH1, #OF3HMov TLl, #OF3HMov SCON, #50HMov PCON, #80Hmov DPTR, #7FF8Hmov A, #4DHMOVX DPTR, ASETB TR1SETB EASETB ESRUN: LCALL AD;调用A/D转换子程序LCALL MAOPAO;调用滤波子程序LCALL TURN;调用湿度转换子程序Mov A, HUMID;将湿度

22、值送往上位机Mov SBUF, ALCALL TWOSEC;延时等待两妙钟LCALL BCDTURN;调用BCD转换子程序LCALL SHOW;调用显示子程序Mov A, HUMIDCJNE A, HUMADR, COMP; 检测到的湿度值大于上位机送来 的湿度值时,则循环采样,否则报 警灌溉DONE: CLR P1.1LCALL ALARM;调用报警延时子程序进行灌溉动作LCALL TIMEORL P1, #02HLCALL TENMIN;灌水结束等待10分钟Limp RUN;回到主程序COMP:JC DONELJMP RUN END32 采样子程序设计根据电路图5,因EOC未接入单片机,故

23、只能采用延时等待的方法来读取A/D转换结果,ADC0809的INO和INl两个地址分别是OBFF8H, OBFF9H, INO通道采集到的11个数据放入以ADTURNO(片内21H)为首址的一片数据区内,IN1通道采集到的11个数据放入以ADTURN1(片内2CH)为首址的另一片数据区内。 程序清单:AD: MOV R0, #ADTURNO MOV R6, #OBHADLOOP: MOV DPTR, #OBFF8H; 启动INO通道A/D转换GOON: MOVX DPTR, A MOV R7, #OAOH; 延时等待转换结束DLAY: NOP NOP NOP NOP NOP DJNZ R7,

24、DLAY MOVX A, DPTR MOV R0, A;将转换后的数据送入以ADTURNO为首址的一片RAM内INC RODJNZ R6, ADLOOPSJMP ADRET3.3 数据处理3.3.1数字滤波技术 在单片机进行数据采集时,输入信号总难免受到这样那样的随机干扰,它们来自被测信号源、传感器、外界干扰等,从而使A/D送入单片机的数据中存在误差,这种因随机千扰而引入的误差为随机误差,其特点是在相同条件下测量同一量时,其大小和符号作无规则变化而无法预测,但测量次数足够多时,其总体服从统计规律,大多数随机误差服从正态分布。为了克服随机干扰引起的误差,硬件上可采用滤波技术;软件上可按照统计规律

25、采用数字滤波方法来抑制有效信号中的干扰成分,消除误差。本系统即采用数字滤波法。 数字滤波无需硬件,它是用软件算法来实现的,只要适当改变软件滤波程序的运行参数,就能方便的改变其滤波特性,实时性很强。常用的数字滤波算法有:限幅滤波法、中位值滤波法、算术平均滤波法、去极值平均滤波法、移动平均滤波法、加权平均滤波法、低通滤波法、复合滤波法等。 中位值滤波法能有效的克服偶然因素引起的波动或采样器不稳定引起的误码等脉冲干扰,对变化比较缓慢的被测参数采用此法能收到良好的滤波效果。因本系统的被测参数土壤湿度为缓慢变化参数,故采用中位值滤波算法。 中位值滤波算法实际上是一种排序方法,其具体思路是:对被测参数连续

26、采样N次(一般N为奇数),然后把N次采样值按大小排列,取其中间值为本次采样值。 本程序每次对土壤湿度连续采样11次,ADTURNO为片内RAM的21H地址单元,是采样值放入内存的首地址,滤波结果放入片内RAM的37H地址单元,即LINEADRO地址。 程序清单:MAOPAO: MOV Rl, #ADTURNO MOV R5, #OAH CLR OOHFILTER: MOV 3CH, R1 INC Rl MOV A, R1 CLR C SUBB A, 3CH JNC NEXT MOV A, Rl MOV R1, 3CH DEC R1 MOV Rl, A INC Rl SETB OOHNEXT:

27、DJNZ R5, FILTER JB OOH, MAOPAO MOV LINEADRO, 26H RET图9 数字滤波程序流程图3.3.2标度变换 在微机化测控系统中,经A/D转换器接口送入微机的数据,是对被测量进行测量得到的原始数据。这些原始数据送入微机后通常要先进行一定的处理,然后才能输出作为显示器的显示数据。例如当被测温度为1000 C,经热电偶转换成热电势,再经放大和A/D转换得到的数字是10,这个A/D转换结果10虽然与1000C温度是对应的,但数字上并不是相等的。因此,不能当作温度值去显示或打印,必须把A/D转换结果10变换成供显示或打印的温度值100,这个变换就是数字显示的标度变

28、换。 在该系统中,湿度传感器和A/D相连,川D转换器和单片机相连,其中不包括任何非线性的数字化测量通道,因此被测量的值N与A/D转换结果D,存在如图10所示线性关系。图10线性关系在该系统中,土壤湿度测量范围0100%对应的输出电压范围为0-5V,ADC0809为8位A./D转换器,转换输出的数码为0255。即根据上面公式,DL=0lD H =255,NL=0, NH=100.TURN: SETB OD3H CLR OD4H;选则第一组寄存器 CLR C MOV A, LINEADR MOV B, #20 MUL AB CLR OD2H MOV R7, B MOV R6, A MOV R5,

29、#00H MOV R4, #33HLOOP1: MOV A, R7 JNZ LOOP2 MOV A, R6 JNZ LOOP2 MOV R7, #0 MOV R6, #0 SJMP$LOOP2: CLR A MOV R2, A MOV R3, A MOV Rl, #16ADIN: CLR C MOV A, R6 RLC A MOV R6, A MOV A, R7 RLC A MOV R7, A MOV A, R2 RLC A MOV R2, A MOV A, R3 RLC ALOOP3:DJNZ R1,ADIN MOV A,R3 JB ACC.7, LOOP4 MOV A, R2RLC A MOV R2,A MOV A, R3RLC ASUBB A,R5JC DONE1JNZ LOOP4

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

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