基于单片机的温室大棚环境监测系统设计

温室大棚对北方反季节蔬菜的种植具有重要意义。据了解全国各地温室大棚使用集中,但是大棚环境调控方式落后、管理落后、生产效率比较低。针对此问题本文提出了一种基于STM32单片机智能温室大棚控制系统方案,实现环境参数的自动检测,以达到智能化、自动化、科学化的目的。

一、引言

本文针对温室大棚环境因素的检测问题,利用无线传输技术,嵌入式技术,以STM32 F103ZE为控制核心,完成了一种智能温控大棚监测系统的设计和测试,该系统的主要功能是:可以实现室内植被环境参数的检测,包括温度、光照度、湿度、二氧化碳浓度检测,并通过无线传输在上位机显示变化曲线

二、温室内部环境参数

1、温度

维持农作物生长的生物学的下限温度、最适温度和上限温度合称为“三基点温度”,“三基点温度”是维持农作物生长最基本的温度指标。多数园艺作物的下限温度为5-15、最适温度为20-28、 上限温度为30-35。一般地,作物在下限温度和上限温度时,农作物虽然停止生长,但仍能够维持生命。在最适温度时,作物的生命活动最为活跃。当作物生长环境低于下限温度或者高于上限温度,作物就会受到不同程度危害,甚至死亡。

2、湿度

湿度是指温室内的空气的相对湿度,表示空气中含水分多少的物理量。湿度在温室种植中是一项比较重要的参数,也是影响植物生长最敏感的因素之一。温室湿度对农作物的蒸腾作用、光合作用以及虫害都有直接或间接的影响。

3、光照强度

在一定的范围内 ,光合作用的速率与光照强度成正比。植物对光照强度的要求用光补偿点和光饱和点表示。光补偿点是光合作用是对光强度要的下限 ,光饱和点是 光合作用是对光强度要求的上限。 农作物生长所需光量曲线模式图如图3-1所示。

3.4二氧化碳浓度

温室大棚内二氧化碳的浓度变化一般分为白天和夜间两种情况。夜间,由于植物光合作用停止,呼吸作用仍在进行,再加上土壤中的微生物等活动产生二氧化碳,使得夜间温室内的二氧化碳浓度比白天高很多。进入白天,温室内的二氧化碳浓度随着植物光合作用的进行而渐渐降低。实验研究表明,温室内在不通风换气的情况下,日出一个小时后,温室内的二氧化碳浓度大约降至300PPM。而室外的二氧化碳浓度约为360 PPM ;日出2到3个小时后,二氧化碳的浓度大约降到80 PPM至150 PPM此时已接近温室农作物的二氧化碳补偿点。此时由于空气中二氧化碳的浓度太低,农作物基本停止光合作用。

三、硬件的选择

1、温度传感器DS18B20

输出的信号为数字信号,具有仅需一个端口引脚进行通讯;

引脚说明:

VDD:可选电源电压

DQ:数据I/O

GND:地

无需外部器件;可通过数据线供电;测温范围-55~125,温度以递增;体积小,抗干扰能力强,精度高的特点。DS18B20 数字温度计提供 9-12 位摄氏温度测量而且有一个由高低电平触发的可编程的不因电源消失而改变的报警功能,DS18B20通过一个单线接口发送或接受信息,因此在中央处理器和 DS18B20 之间仅需一条连接线(加上地线)。它在精度为±5℃。除此之外,DS18B20能直接从单线通讯线上汲取能量,除去了对外部电源的需求。

 2、湿度传感器

测量湿度时我们采用的是DHT11温湿度传感器。DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感式元件和一个NTC测温元件,并与一个高性能8位单片机相连接。

引脚说明:

VDD:供电3-5.5V

DATA:串行数据,单总线

GND:接地

NC:空脚,悬空

3、光照传感器

测量光照参数我们采用的是GY-30光照传感器。内置16bitAD转换器,直接数字输出,省略复杂的计算,省略标定。接线采用IIC通讯方式。

引脚说明:

VCC:供电电源

SCL:IIC总线时钟引脚

SDA:IIC总线数据引脚

ADO:IIC设置地址引脚

GND:接地

4、烟雾传感器

测量浓度我们采用的是MQ-2烟雾传感器。MQ-2烟雾传感器具有良好的抗干扰性,可准确排除有刺激性非可燃性烟雾的干扰信息。具有良好的重复性和长期的稳定性。初始稳定,响应时间短,长时间工作性能好。

引脚说明:

VCC:供电电源

AO:模拟电压输出端

DO:TTL高低电平输出端

5、显示器模块OLED

GND:电源地

VCC:电源正3.3V

DO:SPI时钟线(IIC接口是也为时钟线)

D1:SPI数据线(IIC接口时也为数据线)

RES:显示屏复位管脚

DC:SPI数据/命令选择脚

CS:SPI数据片选,低电平有效,不用时需要接地不能悬空

6、无线设备

选用Lora无线串口模块进行数据的传送,该模块使用SX1278芯片,采用Lora扩频技术,具有功耗低、传输距离远、抗干扰性强的特点。其待机功耗为2.3 uA,传输距离大于3000m,多频通信,只需4个IO即可完成所有功能。通信方式为串口(TTL)。

引脚说明:

M0:输入,和M1配合,决定模块的四种工作模式;

M1:输入,和M0配合,决定模块的四种工作模式;

RX:TTL串口输入,连接到外部TX输出引脚,可配置为漏极开路或上拉输入;

TX:TTL串口输出,连接到外部RX输出引脚,可配置为漏极开路或推挽输出;

AUC:输出,用于指示模块工作状态;

VCC:接电源;

GND:接地

四、系统结构

 

 原理图:

 五、实验结果

各个传感器灵敏地测量周围环境数据,同时将测得的数据显示在OLED显示屏上,此外,还通过无线串口将数据发送到电脑端,并用上位机将各个参数的变化曲线实时显示出来。

 

工程源码分享: 

链接:https://pan.baidu.com/s/1cX5mFSNclFMifGTC1d9FtA 
提取码:xc8i

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/12245.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2023年股票代持行业研究报告

第一章 股票代持概述 1.1 基本概念 股票代持,或称委托持股,是指实际出资人与名义出资人达成以下约定:名义出资人作为名义股东,在股东名册等公司工商登记信息上出现,而实际上由实际出资人出资并享有投资权益。 股票代…

Segment Anything论文详解(SAM)

论文名称:Segment Anything 论文地址:https://arxiv.org/abs/2304.02643 开源地址:https://github.com/facebookresearch/segment-anything demo地址:Segment Anything | Meta AI 主要贡献:开发一个可提示的图像分…

图片存储方案-七牛云存储

1.引语 在实际开发中,我们会有很多处理不同功能的服务器。例如: 应用服务器:负责部署我们的应用 数据库服务器:运行我们的数据库 文件服务器:负责存储用户上传文件的服务器 分服务器处理的目的是让服务器各司其职…

设计模式简述

设计模式(简述) 设计模式的分类 ​ 根据目的可以分为创建型、结构性和行为型三类: 创建型模型:创建对象结构性模型:处理类或对象的组合行为型模式:用于描述对类或对象怎样交互和怎么分派职责 ​ 根据范围可以分为类模式和对象…

nvm-windows的安装使用及踩坑指南

nvm是node的一款版本管理工具,可以简单操作node版本的切换、安装、查看。常规来说,开发中安装一个node版本就够了,但是最近在开发中有的老项目或者一些特定的项目需要来回切换node的版本,不可能手动去卸载掉之前的node版本&#x…

013:Mapbox GL添加marker

第013个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中添加marker。 直接复制下面的 vue+mapbox源代码,操作2分钟即可运行实现效果 文章目录 示例效果配置方式示例源代码(共70行)相关API参考:专栏目标示例效果 配置方式 1)查看基础设置:https://xiaozhu…

算法时间复杂度计算

目录 1.时间复杂度计算 1.1 时间复杂度例题 1.1.1例题 1.1.2例题 1.1.3例题 1.1.4例题 1.2时间复杂度leetcode例题 1.时间复杂度计算 首先,我们需要了解时间复杂度是什么:算法的时间复杂度是指算法在编写成可执行程序后,运行时需要耗费…

使用 Floyd Warshall 检测负循环

我们得到了一个有向图。我们需要计算图形是否有负循环。负循环是循环的总和为负的循环。 在图形的各种应用中都可以找到负权重。例如,如果我们沿着这条路走,我们可能会得到一些好处,而不是为一条路付出代价。 例子:

Linux中的read/write和recv/send的区别,并使用recv/send实现简单的聊天功能

Linux中的read/write和recv/send的区别 r e a d / w r i t e read/write read/write的用法 r e c v / s e n d recv/send recv/send的用法 L i n u x Linux Linux中的 r e a d / w r i t e read/write read/write和 r e c v / s e n d recv/send recv/send的区别下面是一个使用…

Three.js教程:第一个3D场景

推荐:将 NSDT场景编辑器加入你3D工具链 其他工具系列: NSDT简石数字孪生 下面的代码完整展示了通过three.js引擎创建的一个三维场景,在场景中绘制并渲染了一个立方体的效果,为了大家更好的宏观了解three.js引擎, 尽量使…

基于SpringBoot的私人健身和教练的预约管理系统源码数据库论文

目 录 第一章 概述 1.1研究背景 1.2开发意义 1.3研究现状 1.4研究内容 1.5论文结构 第二章 开发技术介绍 2.1系统开发平台 2.2平台开发相关技术 2.2.1 Javar技术 2.2.2 Mysql数据库介绍 2.2.3 Mysql环境配置 2.2.4 B/S架构 2.2.5 Springboot框架 …

设计模式-结构型模式之外观模式

4. 外观模式 4.1. 模式定义 外观模式(Facade Pattern):外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个 高层接口,这个接口使得这一子系统更加容易使用。外观模…

socket 到底是个啥

哈喽大家好,我是咸鱼 我相信大家在面试过程中或多或少都会被问到这样一个问题:你能解释一下什么是 socket 吗 我记得我当初的回答很是浅显:socket 也叫套接字,用来负责不同主机程序之间的网络通信连接,socket 的表现…

使用树状图可视化聚类

一般情况下,我们都是使用散点图进行聚类可视化,但是某些的聚类算法可视化时散点图并不理想,所以在这篇文章中,我们介绍如何使用树状图(Dendrograms)对我们的聚类结果进行可视化。 树状图 树状图是显示对象…

大模型混战,阿里百度华为谁将成就AI时代的“新地基”?

从算力基础到用户生态,群雄逐鹿大模型 自2022年stable diffusion模型的进步推动AIGC的快速发展后,年底,ChatGPT以“破圈者”的姿态,快速“吸粉”亿万,在全球范围内掀起了一股AI浪潮,也促使了众多海外巨头竞…

微信为什么使用 SQLite 保存聊天记录

SQLite “只是”一个库,它不是传统意义上的服务器。因此,在某些场合下,它确实不合适。但是,在相当多的其他场合,它却是最合适的选择。SQLite 号称是部署和使用最广泛的数据库引擎。我认为这很有可能,因为 S…

10个镜像网站工具箱供你使用,不注册ChatGPT也能免费使用ChatGPT

ChatGPT已经成为了人工智能技术中备受瞩目的一员,它可以为我们带来更加智能化、个性化的交互体验。对于没有ChatGPT账号或者不想注册账号的人来说,他们可能会错过这种神奇的体验。 而本篇文章就帮大家解决这个问题,不用登录ChatGPT账号&…

Doris(9):删除数据(Delete)

Delete不同于其他导入方式,它是一个同步过程。和Insert into相似,所有的Delete操作在Doris中是一个独立的导入作业,一般Delete语句需要指定表和分区以及删除的条件来筛选要删除的数据。 Doris 目前可以通过两种方式删除数据: DE…

使用Schrödinger Python API系列教程 -- 介绍 (一)

使用Schrdinger Python API系列教程 – 介绍 (一) 本文档可从Schrdinger网站www.schrodinger.com/pythonapi访问。 从Python文档字符串生成的完整API文档可以在这里访问 介绍 在最高级别上,Schrdinger Python API提供了一个基本的分子结构类,并允许与…

【JavaEE】关于synchronized总结-Callable用法及JUC的常见问题

博主简介:想进大厂的打工人博主主页:xyk:所属专栏: JavaEE初阶synchronized原理是什么?synchronized到底有什么特点,synchronized的锁策略是什么,是怎么变化的呢?本篇文章总结出, Synchronized 具有以下特性…