单片机农业环境监测与灌溉控制实验程序及流程图.docxVIP

单片机农业环境监测与灌溉控制实验程序及流程图.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

单片机农业环境监测与灌溉控制实验程序及流程图

一、实验目的

本实验基于51单片机设计农业环境监测与自动灌溉控制系统,实现土壤湿度、环境温度数据的实时采集,根据预设阈值自动控制灌溉水泵启停,适配农业科技试验示范中的节水灌溉技术场景,为示范田精准灌溉提供智能化解决方案,降低人工成本,提高水资源利用率。

二、核心硬件选型

组件名称

型号/规格

功能说明

单片机核心板

STC89C52

系统控制核心,处理传感器数据、执行控制逻辑

土壤湿度传感器

YL-69

采集土壤湿度数据,模拟信号输出(0-5V)

温度传感器

DS18B20

采集环境温度数据,数字信号输出,精度±0.5℃

继电器模块

5V单路

控制灌溉水泵电源通断(隔离强电与弱电)

灌溉水泵

12V直流水泵

执行灌溉动作,功率适配示范田小块灌溉需求

LCD显示屏

1602液晶

实时显示土壤湿度、环境温度及水泵工作状态

电源模块

5V/12V双输出

为单片机、传感器提供5V电源,为水泵提供12V电源

按键模块

3个独立按键

设定土壤湿度阈值(上限/下限)、手动控制水泵

三、系统流程图

(一)整体工作流程图

flowchartTD

A[系统上电初始化]--B[初始化LCD显示屏、传感器、I/O口]

B--C[读取按键输入]

C--|按键1:设置湿度上限|D[进入上限设定模式,LCD显示当前设定值]

C--|按键2:设置湿度下限|E[进入下限设定模式,LCD显示当前设定值]

C--|按键3:手动控制|F[切换水泵启停状态,LCD显示“手动模式”]

C--|无按键操作|G[采集传感器数据]

D--H[按键确认设定值,保存至单片机存储]

E--H

F--I[延时2秒,返回主循环]

G--J[读取DS18B20温度数据]

G--K[读取YL-69土壤湿度数据(AD转换)]

J--L[LCD显示屏显示温度、湿度、水泵状态]

K--L

L--M[判断土壤湿度是否低于设定下限]

M--|是|N[控制继电器吸合,水泵启动,LCD显示“灌溉中”]

M--|否|O[判断土壤湿度是否高于设定上限]

O--|是|P[控制继电器断开,水泵停止,LCD显示“灌溉停止”]

O--|否|Q[水泵保持当前状态,LCD显示“待机”]

N--R[延时500ms,返回主循环]

P--R

Q--R

H--R

I--R

(二)关键子流程:传感器数据采集流程图

flowchartTD

subgraph数据采集子流程

A[启动传感器采集]--B[DS18B20初始化]

B--|初始化成功|C[发送温度读取指令]

B--|初始化失败|D[LCD显示“温度传感器故障”]

C--E[接收16位温度原始数据]

E--F[数据换算(℃=原始数据/16)]

F--G[YL-69传感器供电]

G--H[通过ADC0832读取模拟信号]

H--I[数据换算(湿度值=100-(采集值/255*100))]

I--J[数据滤波(取3次采集平均值,避免干扰)]

J--K[返回温度、湿度数据]

D--K

end

四、实验程序(C语言)

#includereg52.h

#include

#defineucharunsignedchar

#defineuintunsignedint

//LCD1602引脚定义

sbitLCD_RS=P2^6;

sbitLCD_EN=P2^7;

#defineLCD_DATAP0

//传感器与控制引脚定义

sbitSoil_Sensor=P1^0;//YL-69模拟信号输入(接ADC0832CH0)

sbitRelay=P1^1;//继电器控制引脚(高电平吸合)

sbitKey1=P3^2;//设定湿度上限

sbitKey2=P3^3;//设定湿度下限

sbitKey3=P3^4;//手动控制

//全局变量定义

ucharTemp_H,Temp_L;//温度整数/小数部分

ucharSoil_Humidity

文档评论(0)

智慧的由来 + 关注
实名认证
文档贡献者

本人从事文件及课件编写十几年,对培训管理和PPT课件有丰富的经验。

1亿VIP精品文档

相关文档