资源描述
(完整版)基于单片机的自动节水灌溉系统
数理与信息工程学院
应用系统设计
题 目: 基于单片机的自动节水灌溉系统
专 业: 计算机科学与技术(专升本)
班 级: 计算机056班
姓 名: 孙 岳 学号: 05191137
指导老师: 余水宝
成 绩:
( 2006。6 )
目 录
第1节 引 言…………………………………………………………………………3
1.1 节水灌溉系统概述……………………………………………………………3
1.2 本设计任务和主要内容………………………………………………………4
第2节 系统主要硬件电路设计………………………………………………………5
2。1 单片机控制系统原理…………………………………………………………5
2.2 单片机主机系统电路…………………………………………………………5
2。2。1时钟电路………………………………………………………………6
2.2.2复位电路………………………………………………………………6
2.2。3数据存储器的扩展电路………………………………………………6
2.3 数据采集处理电路……………………………………………………………7
2.4 LED显示系统电路……………………………………………………………8
2.5 超限报警电路…………………………………………………………………10
第3节 系统软件设计…………………………………………………………………11
3。1 系统主程序设计………………………………………………………………11
3.2 采样子程序设计………………………………………………………………12
3.3数据处理…………………………………………………………………………13
3。3。 1数字滤波技术……………………………………………………………13
3。3。2标度变换…………………………………………………………………15
3. 3。 3 BCD转换………………………………………………………………18
3。 4 LED动态显示程序…………………………………………………………18
第4节 结束语…………………………………………………………………………21
参考文献…………………………………………………………………………22
基于单片机的自动节水灌溉系统
数理与信息工程学院 05计算机专升本 孙岳
指导教师:余水宝
第1节 引 言
自动控制节水灌溉技术的高低代表着农业现代化的发展状况,灌溉系统自动化水平较低是制约我国高效农业发展的主要原因。单片机控制的滴灌节水灌溉系统,该系统可对不同土壤的湿度进行监控,并按照作物对土壤湿度的要求进行适时、适量灌水,其核心是单片机和PC机构成的控制部分,主要对土壤湿度与灌水量之间的关系、灌溉控制技术及设备系统的硬件、软件编程各个部分进行实现。
单片机控制部分采用AT89C51单片机为核心,主要由土壤湿度传感器,信号处理电路,显示电路,输出控制电路,故障报警电路等组成,软件选用汇编语言编程。单片机可将土壤湿度传感器检测到的土壤湿度模拟量转换成数字量,显示于LED显示器上.该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。
1.1 节水灌溉系统概述
生命之起源,水为必要条件,没有了水,地球上的生命将会枯竭。
随着21世纪的到来,能源危机将接踵而至。比能源危机更可怕的是,作为
人类生命之源的水的短缺到了前所未有的程度,这一状况还将随着时间的推移和
社会的发展继续恶化。水资源危机已成为全球性的突出问题,利用科技手段缓解这一危机,将是人类主要的出路.
农业是人类社会最古老的行业,是各行各业的基础,也是人类顿以生存的最
重要的行业.农业的发展从长远来看很重要,一是水的问题,二是科技的问题。
农业的根本出路在科技,在教育。由传统农业向现代化农业转变,由粗放经营向
集约经营转变,必须要求农业科技有一个大的发展,进行一次新的农业技术革命。
农业与工业、交通等行业相比仍然比较落后,农业灌溉技术尤其落后。灌溉系统
自动化水平较低是制约我国高效农业发展的主要原因。传统的灌溉模式自动化程
度极低,基本上属粗放的人工操作,即便对于给定的量,在操作中也无法进行有
效的控制,为了提高灌溉效率,缩短劳动时间和节约水资源,必须发展节水灌溉
控制技术。
现代智能型控制器是进行灌溉系统田间管理的有效手段和工具,它可提高操
作准确性,有利于灌溉过程的科学管理,降低对操作者本身素质的要求.除了能
大大减少劳动量,更重要的是它能准确、定时、定量、高效地给作物自动补充水
分,以提高产量、质量,节水、节能。
现代灌溉控制器的研究使用在我国农、林、及园艺为数不多,与发达国家相
比,有较大的差距,还基本停留在人工操作上,即使有些地方搞了一些灌溉工程
的自动化控制系统,也是根据经验法来确定每天灌溉次数和每次灌溉量,如果灌
溉量与作物实际需水量相比太少,便不能有效的促进作物健康成长;而灌溉量太
多,肥水流失,又会造成资源浪费,同时传统的灌溉法还需要相关专家的实时观
察并经验指导生产,劳动生产率低,这也不能与现代化农业向优化、高效化方向
发展要求同步.
随着计算机技术和传感器技术的迅猛发展,计算机和传感器的价格日益降
低,可靠性日益提高,用信息技术改造农业不仅是可能的而且是必要的。用高新
技术改造农业产业,实施节水灌溉已成为我国农业乃至国民经济持续发展带战略
性的根本大事。本文旨在设计一套能对作物生长的土壤湿度进行自动监控的系
统,它能对作物进行适时、适量的灌水,起到高效灌溉,节水、节能的作用。
1.2 本设计任务和主要内容
本论文主要研究单片机控制的滴灌节水灌溉系统,分别对土壤湿度与灌水量之间的关系、灌溉控制技术及系统设备的软、硬件各个部分进行了研究。
主要内容如下:
1。根据滴灌技术的特点,进行节水灌溉控制系统的整体研究与设计。
2。针对土壤湿度难以用精确的数学模型描述的特点,采用模糊控制理论,对这一理论进行了深入的研究,重点研究双输入单输出的模糊控制方式。
3。 LED显示土壤湿度值,在灌水期间以倒计时的方式显示灌水剩余时间。
4.当土壤湿度值低于设定的最低值时,系统可自动报警。
第2节 系统主要硬件电路设计
2.1 单片机控制系统原理
种植作物的土壤
土壤湿度传感
A/D转换
AT89C51单片机
LED显示
报警
放大驱动
电磁阀
图2 单片机控制系统原理框图
2.2 单片机主机系统电路
AT89C51单片机是51系列单片机的一个成员,是8051单片机的简化版。内部自带2K字节可编程FLASH存储器的低电压、高性能COMS八位微处理器,与Intel MCS-51系列单片机的指令和输出管脚相兼容。由于将多功能八位CPU和闪速存储器结合在单个芯片中,因此,AT89C2051构成的单片机系统是具有结构最简单、造价最低廉、效率最高的微控制系统,省去了外部的RAM、ROM和接口器件,减少了硬件开销,节省了成本,提高了系统的性价比。
图3 单片机主机系统图
2。2.1时钟电路
单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通
常用两种电路形式得到:内部振荡和外部振荡。MCS—51单片机内部有一个用于
构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输
入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实
际使用中常采用这种方式,如图3所示在其外接晶体振荡器(简称晶振)或陶
瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外
石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。
图3中外接晶体以及电容C2和C1构成并联谐振电路,它们起稳定振荡频
率、快速起振的作用,其值均为30P左右,晶振频率选6MHz o
RESET
2。2。2复位电路
为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位
后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。
单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两
个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为
高电平,单片机就处于循环复位状态。复位后系统将输入/输出(1/0)端口寄存
器置为FFH,堆栈指针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数据存储器的扩展电路
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转换器,对启动转换信号的要求也不
同,分脉冲启动和电平启动两种,ADC0809采用脉冲启动转换,只需给A/D转
换器的启动控制转换的输入引脚((START)上,加入正脉冲信号,即启动A/D
转换器进行转换,转换开始后,转换结束信号输出端(EOC)信号变低,转换结
束时,EOC返回高电平,以通知主机读取转换结果的数字量,这个信号可以作
为A/D转换器的状态信号供查询,也可以用作中断请求信号。
图5数据采集处理电路
本系统中ADC0809与AT89C51单片机的接口如图5所示,采用等待延时方式.ADC0809的时钟频率范围要求在10—1280kHz , AT89C51单片机的ALE脚的频率是单片机时钟频率的1/6,因此当单片机的时钟频率采用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信号,用以打开三态输出锁存器。
2.4 LED显示系统电路
微机化测控系统中常用的测量数据的显示器有发光二极管显示器(简称LED或数码管)和液晶显示器(简称LCD).这两种显示器都具有线路简单、耗电少、成本低、寿命长等优点,本系统输出结果选用4个LED显示。数码管有共阴共阳之分,本系统采用8段共阴型LED,其原理图如图6所示,每位数码管内部有8个发光二极管,公共端由8个发光二极管的阴极并接而成,正常显示时公共端接低电平(GND),各发光二极管是否点亮取决于a-dp各引脚上是否是高电平。
LED数码管的外形结构如图6,外部有10个引脚,其中3, 8脚为公共端也称位选端,其余8个引脚称为段选端,当要使某一位数码管显示某一数字((0-9中的一个)必须在这个数码管的段选端加上与数字显示数字对应的8位段选码(也称字形码),在位选端加上低电平即可.
由于系统要显示的内容比较简单,显示量不多,所以选用数码管既方便又经济。LED有共阴极和共阳极两种。如图6所示.
二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8"的各个笔划(段)a~g,另一个小数点为dp发光二极管。当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被损坏,需外加限流电阻。
图6 LED数码管结构原理图:
符号和引脚 共阴极 共阳极
数码管显示器有两种工作方式,即静态显示方式和动态扫描显示方式。为节省端口及降低功耗,本系统采用动态扫描显示方式.动态扫描显示方式需要解决多位LED数码管的“段控"和“位控”问题,本电路的通过P1口实现:而每一位的公共端,即LED数码管的“位控”,则由P3口控制.这种连接方式由于多位字段线连在一起,因此,要想显示不同的内容,必然要采取轮流显示的方式,即在某一瞬间,只让其中的某一位的字位线处于选通状态,其它各位的字位线处于断开状态,同时字段线上输出这一位相应要显示字符的字段码.在这一瞬时,只有这一位在显示,其他几位则暗。在本系统中,字位线的选通与否是通过PNP三极管的导通与截止来控制,即三极管处于“开头”状态。
因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超限报警电路
为了在某些紧急状态或反常状态下,能使操作人员不致忽视,以便及时处理,往往需要有某种更能引起人们注意提起警觉的报警信号产生,这种报警信号通常有三种类型:闪光报警、鸣音报警、语音报警,本系统采用简单易行的声光报警电路。
如图8所示报警电路,报警设备选用压电式蜂鸣器,它约需要10mA的驱动电流,只需在其两条引线上加3一15V的直流电压,即可产生3KHz左右的蜂鸣声音,图中蜂鸣器的一端接在高电平+SV,另一端接Pl.0,在初态Pl。0始终输出高电平1,当需要报警时,程序对其端口清零即可,声音的长短可用延时程序控制实现。图中接入的发光二极管LED为超高线报警器,当P1。1端输出为低电平“0”时,二极管导通,灯亮发出报警信号
图8报警电路
第3节 系统的软件设计
系统软件程序设计主要包括:主程序设计,采样子程序设计,数据处理程序,显示子程序,串口通信程序等.各芯片地址编码为:
RAM6116: OFOOOH-OF7FFH 81551/0口:7FF8H - 7FFDH
ADC0809: OBFF8H-OBFFFH
3.1 系统主程序设计
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 ;标度变换后的湿度值存放地址
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 0050H
START: MOV SP, #50H ;设置堆栈
MOV HUMADR, #OFFH
SETB OD3H ;选中寄存器3
SETS OD4H
MOV R0, #HUMADR
CLR OD3H ;选中寄存器0
CLR OD4H
Mov TMOD, #22H;主程序初始化
Mov TH1, #OF3H
Mov TLl, #OF3H
Mov SCON, #50H
Mov PCON, #80H
mov DPTR, #7FF8H
mov A, #4DH
MOVX @DPTR, A
SETB TR1
SETB EA
SETB ES
RUN: LCALL AD;调用A/D转换子程序
LCALL MAOPAO;调用滤波子程序
LCALL TURN;调用湿度转换子程序
Mov A, HUMID;将湿度值送往上位机
Mov SBUF, A
LCALL TWOSEC;延时等待两妙钟
LCALL BCDTURN;调用BCD转换子程序
LCALL SHOW;调用显示子程序
Mov A, HUMID
CJNE A, HUMADR, COMP; 检测到的湿度值大于上位机送来
的湿度值时,则循环采样,否则报
警灌溉
DONE: CLR P1.1
LCALL ALARM;调用报警延时子程序进行灌溉动作
LCALL TIME
ORL P1, #02H
LCALL TENMIN;灌水结束等待10分钟
Limp RUN;回到主程序
COMP:JC DONE
LJMP RUN
END
3.2 采样子程序设计
根据电路图5,因EOC未接入单片机,故只能采用延时等待的方法来读取A/D转换结果,ADC0809的INO和INl两个地址分别是OBFF8H, OBFF9H, INO通道采集到的11个数据放入以ADTURNO(片内21H)为首址的一片数据区内,IN1通道采集到的11个数据放入以ADTURN1(片内2CH)为首址的另一片数据区内.
程序清单:
AD: MOV R0, #ADTURNO
MOV R6, #OBH
ADLOOP: MOV DPTR, #OBFF8H; 启动INO通道A/D转换
GOON: MOVX @DPTR, A
MOV R7, #OAOH; 延时等待转换结束
DLAY: NOP
NOP
NOP
NOP
NOP
DJNZ R7, DLAY
MOVX A, @DPTR
MOV @R0, A;将转换后的数据送入以
ADTURNO为首址的一片
RAM内
INC RO
DJNZ R6, ADLOOP
SJMP AD
RET
3.3 数据处理
3。3.1数字滤波技术
在单片机进行数据采集时,输入信号总难免受到这样那样的随机干扰,它们
来自被测信号源、传感器、外界干扰等,从而使A/D送入单片机的数据中存在误
差,这种因随机千扰而引入的误差为随机误差,其特点是在相同条件下测量同一
量时,其大小和符号作无规则变化而无法预测,但测量次数足够多时,其总体服
从统计规律,大多数随机误差服从正态分布.为了克服随机干扰引起的误差,硬
件上可采用滤波技术;软件上可按照统计规律采用数字滤波方法来抑制有效信号
中的干扰成分,消除误差。本系统即采用数字滤波法.
数字滤波无需硬件,它是用软件算法来实现的,只要适当改变软件滤波程序
的运行参数,就能方便的改变其滤波特性,实时性很强.常用的数字滤波算法有:
限幅滤波法、中位值滤波法、算术平均滤波法、去极值平均滤波法、移动平均滤
波法、加权平均滤波法、低通滤波法、复合滤波法等。
中位值滤波法能有效的克服偶然因素引起的波动或采样器不稳定引起的误
码等脉冲干扰,对变化比较缓慢的被测参数采用此法能收到良好的滤波效果.因
本系统的被测参数土壤湿度为缓慢变化参数,故采用中位值滤波算法.
中位值滤波算法实际上是一种排序方法,其具体思路是:对被测参数连续采
样N次(一般N为奇数),然后把N次采样值按大小排列,取其中间值为本次采
样值。
本程序每次对土壤湿度连续采样11次,ADTURNO为片内RAM的21H地
址单元,是采样值放入内存的首地址,滤波结果放入片内RAM的37H地址单元,
即LINEADRO地址。
程序清单:
MAOPAO: MOV Rl, #ADTURNO
MOV R5, #OAH
CLR OOH
FILTER: 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 OOH
NEXT: DJNZ R5, FILTER
JB OOH, MAOPAO
MOV LINEADRO, 26H
RET
图9 数字滤波程序流程图
3。3.2标度变换
在微机化测控系统中,经A/D转换器接口送入微机的数据,是对被测量进行
测量得到的原始数据。这些原始数据送入微机后通常要先进行一定的处理,然后
才能输出作为显示器的显示数据。例如当被测温度为1000 C,经热电偶转换成热
电势,再经放大和A/D转换得到的数字是10,这个A/D转换结果10虽然与100
0C温度是对应的,但数字上并不是相等的。因此,不能当作温度值去显示或打
印,必须把A/D转换结果10变换成供显示或打印的温度值100,这个变换就是
数字显示的标度变换。
在该系统中,湿度传感器和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, #00H
MOV R4, #33H
LOOP1: 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, #16
ADIN: 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 A
LOOP3:DJNZ R1,ADIN
MOV A,R3
JB ACC.7, LOOP4
MOV A, R2
RLC A
MOV R2,A
MOV A, R3
RLC A
SUBB A,R5
JC DONE1
JNZ LOOP4
MOV A,R2
SUBB A,R4
JC DONE1
LOOP4:MOV A,R6
ADD A,#1
MOV R6,A
MOV A,R7
ADDC A,#0
MOV R7,A
DONE1: MOV HUMID,R6
CLR 0D3H
RET
3.3。3 BCD转换
计算机所能识别和处理的是二进制数,在进行标度变换后的结果都是用二进
制数进行计算和存储的,而在输入/输出系统中,按照人们的习惯均采用十进制
数比较直观一些。在计算机中十进制数常采用BCD码(即用四位二进制数代表
单片机控制的节水灌溉系统的研究
一位十进制数)表示,这样采样得到的数据才可以以十进制的形式输出显示。本
系统将二进制数转换成BCD数的方法是将其除以10”次幂,即得相应位数,最
后的余数为个位数。程序如下:
BCDTURN: MOV SHOWADR+3, #00H‘因湿度值只能小于100,故千位数为0
MOV B, #100
MOV A, HUMID
DIV AB
MOV SHOWADR+2,A‘将百位数送SHOWADR+2显示地址
MOV A, #10
XCH A, B
DIV AB
MOV SHOWADR+1,A‘将十位数送SHOWADR+1显示地址
MOV SHOWADR, B‘将个位数送SHOWADR显示地址
RET
3.4 LED动态显示程序
根据LED动态显示系统电路图4—8, 8155控制口的地址为7FF8H, POA口
地址为7FF9H , PC口地址为7FFBH,片内显示缓冲区为
SHOWADR-SHOWADR+3 (40H—43H),共4个单元对应4个数码管。程序中先
取SHOWADR-I—3中的数,对应选中最左边的数码管,其余类推.由于LED为
共阴极接法,并有反相驱动,字型表TAB中有效的字型码为:
LED显示段码
字型
共阳极段
共阴极段
字型
共阳极段
共阴极段
0
C0H
3FH
9
90H
6FH
1
F9H
06H
A
88H
77H
2
A4H
5BH
B
83H
7CH
3
B0H
4FH
C
C6H
39H
4
99H
66H
D
A1H
5EH
5
92H
6DH
E
86H
79H
6
82H
7DH
F
84H
71H
7
F8H
07H
空白
FFH
00H
8
80H
7FH
P
8CH
73H
程序清单如下:
MOV DPTR, #7FF8H;指向8155控制口
MOV A, #4DH;设置8155工作方式字
MOVX @DPTR, A;设A口、C口均为输出
SHOW: CLR OD3H
SETB OD4H ;选中寄存器2组
MOV R4, #OFFH
SHOWSTART: MOV R0, SHOWADR+3 ;指向缓冲区末单元
MOV R1, #4;显示4位LED
SHOWLED:
MOV R6, #20H
MOV R7, #00H
DIR 1:MOV A, #00H
MOV DPTR, #7FFBH
MOVX @DPTR, A
MOV A,@R0
MOV DPTR, #TAB
MOV A, @A+DPTR
MOV DPTR, #7FF9H
MOVX @DPTR,A
MOV A,R6
MOV DPTR,# 7FFBH
MOVX @DPTR,A
HERE:DJNZ R7,HERE
DEC RO
CLR C
MOV A,R6
RRC A
MOV R6,A
JNZ DIR1
DJNZ R1,SHOWLED
DJNZ R4,SHOWSTART
CLR 0D4H
TAB:DB OCOH, OF9H, OA4H, OBOH
DB 99H, 92H, 82H, OF8H
DB 80H, 90H, 88H, 83H
DB OC6H, OA1H, 86H, 8EH
RET
结 束 语
首先,通过这次应用系统设计,在很大程度上提高了自己的独立思考能力和单片机的专业知识,也深刻了解写一篇应用系统的步骤和格式,有过这样的一次训练,相信在接下来的日子我们都会了,而且会做得更好.
我所写的系统主要根据目前节水灌溉技术的发展趋势和国内实际的应用特点和要求,采用了自动化的结构形式,实现对土壤湿度的自动检测和控制。
系统以单片机AT89C51为核心部件,单片机系统完成对土壤湿度信号的采集、处理、显示等功能;用Protel软件绘制电路原理图和PCB电路印刷板图,并在电路板厂制作控制主板;利用MCS51汇编语言编制,运行程序该系统的主要特点是:
1)适用性强,用户只需对界面参数进行设置并启动系统正常运行便可满足不同作物对土壤湿度的要求,实现对土壤湿度的实时监控,下位机也可脱离上位机单独工作。
2)可对作物进行适时、适量灌水,不仅有利于作物的生长发育,而且避免了水资源的浪费,起到了高产节水的作用.
3)将模糊智能控制技术引入对土壤湿度的分析和处理中,模糊控制决策无需建立被控对象的数学模型,系统的鲁棒性强,适合对非线性、时变、滞后系统的控制,对灌溉系统采用模糊控制非常适合。具体 采用双输入单输出的模糊控制方法,使控制系统更具科学性。
4)系统成本低廉,操作非常简单,可扩展性强,只要稍加改变,即可增加其他使用功能。
本系统对现代化农业的发展具有十分重要的意义:
1)本系统只对灌溉中水的因素实行监控,而未涉及肥的问题,应将水 肥结合起来进行灌溉,对作物生长效果会更好。
2)应同时考虑土壤湿度和作物需水量两个因素,判断是否要对作物进
行灌溉以及所需灌水量的多少。
3)被测土壤湿度只是进行了两点测试,如果能进行多点检测就会使检测到的湿度值精度更高.
4)本系统在模拟检测中运行较好,但采样据不太稳定等,还有待于进一步完善提高。参考文献
[1]景东升.单片机自动灌溉控制系统研究、设计及应用。〔学位论文].北京农业工程大学,1994
[2」武庆生,仇梅.单片机原理与应用.电子科技大学出版,1998,12
[3]朱定华.单片机原理与接口技术。电子工业出版社,2001,4
[4]刘瑞新。单片机原理及应用教程。机械工业出版社,2003,7
[5」吴普特,牛文全,郝宏科.现代化高效节水灌溉设施.化学工业出版社,2002b,5
20
展开阅读全文