单片机实物成品-008 智能浇花系统

devtools/2024/12/28 12:28:44/

智能浇花系统(温度 +湿度+土壤湿度+光照+排风+加热+浇水+灯光+自动模式+手动模式+wifi传输控制+送APP源码)

本项目以软硬件结合开发的方式,选择C语言作为硬件开发技术,以STM32单片机作为核心控制板,在各数据传输节点上连接不同的传感器,采集土壤湿度、温湿度、光照以及二氧化碳数据,并根据各项数据的变化进行合理、正确、自动的浇花、照明、降温、报警、除湿,实现了鲜花的自动化养护。

成品展示:

智能浇花系统版本14

功能简介:

 1. STM32F103C8T6 单片机进行数据处理

 2. OLED 液晶显示空气温度、土壤湿度、光照、实时数据。

 3. 土壤湿度传感器传感器检测当前烟雾浓度 

 4. DHT11 温湿度传感器检测当前环境温度和湿度

 5.光敏检测当前环境光照强度

 6.第一个按键:切换模式 自动模式/手动模式/阈值设置模式 

 7.手动模式下 第二个按键切换选中某个设备 第三个按键打开和关闭选中的设备 

 8. 阈值模式下第二个按键切换选中设置某个阈值  按键三 加  按键四 减

 9. 温度高于设定的最高温度阈值时,继电器外接的排风设备打开 进行降温  低于阈值时 关闭排风 停止降温

 10. 温度低于设定的最低温度阈值时,继电器外接的加热片设备打开 进行升温  高于阈值时 关闭加热 停止升温

 11. 湿度高于设定的最高湿度阈值时,继电器外接的排风设备打开 进行除湿  低于阈值时 关闭排风 停止除湿 

 12. 湿度低于设定的最低湿度阈值时,继电器外接的加湿设备打开 进行加湿  高于阈值时 关闭加湿设停止加湿

 13.土壤湿度低于设定的阈值时,报警设备打开 进行报警  高于阈值时 关闭报警设备 停止报警 

 14.光照低于设定的阈值时,补光设备打开 进行补光  高于阈值时 关闭灯光 停止补光 

 15.WIFI 模块ESP8266 无线传输数据到APP进行显示

 16.APP 可以远程控制 排风、加热片设备、浇水设备、补光灯开启和关闭 

 17.APP 可以远程设置阈值

论文目录展示:

部分章节展示:

第1章 概  述

1.1 研究背景与意义

随着人们生活水平的提高,花卉市场猛烈发展,鲜花种植成为了人们陶冶情操、休闲生活的方式之一,收到广大群众的喜爱。鲜花本身具有“娇贵”、“脆弱”的特点,所以在鲜花种植上,需要悉心照料,然而,在如今快节奏的生活中,工作繁忙已经成为大部分人的常态,这让很多人无法有更多的精力去照顾鲜花,导致鲜花缺水、缺营养,最后直接死亡。浇花作为鲜花种植的关键环节,对鲜花品质有着决定性的影响,但是在传统的浇花方式中,人力物力技术有限,并没有很先进的辅助工具,大多采用人工管理的方式,主要凭借着人们的生活常识和经验来进行干预判断,主观意识很强,错判、误判的现象不在少数,导致过去鲜花的损坏率高,生产管理成本变大,这也成为了一直以来花卉种植最为头疼的问题。

但是随着时代的不断更迭、科学技术的日益创新,在信息产业第三次浪潮来临之际,迎来了时代升级,物联网技术的普及与运用,为人类提供了更加便利的生产生活,推动了农田生产的改造升级,利用智能化设备管理花卉生态已是大势所趋,提出了精细化的管理理念,是指一种动态的管理手段,即根据变量的变化而作出不同的管理方式。 因此,本文提出一种智能浇花系统,旨在解决花卉浇灌方式的难题,通过安装具有特定功能的传感器设备来实时监测花卉种植的土壤湿度、温湿度、光照强度、二氧化浓度,并根据其变化进行自动浇灌和改善,全面提升鲜花的生产品质和自动化管理水平。

第2章 总体设计

2.1总体设计方案

本项目以软硬件结合开发的方式,选择C语言作为硬件开发技术,以STM32单片机作为核心控制板,在各数据传输节点上连接不同的传感器,采集土壤湿度、温湿度、光照以及二氧化碳数据,并根据各项数据的变化进行合理、正确、自动的浇花、照明、降温、报警、除湿,实现了鲜花的自动化养护。包括主控模块、数据采集模块、按键模块、执行模块、显示模块报警模块

其总体架构设计如图2.1所示。在数据采集模块中,分别对土壤湿度、温湿度、光照以及二氧化碳数据进行实时采集,并将采集到的各项数据通过电路连接传送给单片机进行处理与计算,在采集的同时,可以由按键模块来任意切换功能模式、手动控制执行器状态、设置各项参数阈值等。当检测到土壤湿度过低的时候,会触发执行模块中的水泵进行浇水;当检测到温度过高的时候,会触发执行模块中的风扇进行降温;当检测到湿度过低的时候,会触发执行模块中的加湿器进行加湿,当检测到光照强度过低的时候,会触发执行模块中的LED灯进行照明。此外,当二氧化碳浓度过高的时候,会触发报警模块进行报警,通知工作人员进行及时干预,从而落实浇花手段的智能化升级。

图2.1 系统总体架构设计图

第3章 硬件电路设计

3.1 设计指导思想

浇花作为花卉种植的关键环节,能够为鲜花补充水分、养分,促进鲜花的健康生长,无论是在人们的日常养殖还是专业培育中,都起着重要的作用。过调研分析得知,过去的浇花装置不仅体积大、价格昂贵,还需要随时安排专业人员在现场监督分析,判断数据是否存在异常,这种方式非常消耗人工不说,还很容易造成花卉种植的过度浪费,也存在一些人工偷懒、疏忽大意而无法及时发现问题,导致花卉枯萎、损坏,造成一定的经济损失。在“智慧农业”被提出,并席卷全球的同时,本文旨在对花卉种植领域中的浇花手段进行提档升级,提出设计一款智能浇花系统,能够随时对花卉种植环境的土壤湿度、温湿度、二氧化碳浓度、光照强度土进行实时监测,并自动判定和预警,解放了人工双手,让机器代替人工来进行作业,具有实时性、智能性、简易的可操作性,能够提升现代人生活质量、促进技术发展。

3.2 主控模块电路设计

单片机是一种微处理器,而STM32单片机是一种32系列的微处理器,是硬件程序的核心控制,能够向程序发送指令、接收指令,并控制外设作出一定的反应,同时能够对程序的数据进行计算处理,得到运算结果。STM32单片机分为了Cortex-M0、M3、M4 和M7四种类型。常用的STM32单片机是以Cortex-M3为内核的,其架构包括了Lcode总线、4个驱动单元、4个被动单元、总线矩阵以及AHB/APB桥这几个部分。

Lcode总线是程序的接口向量,负责完成指令预存;4个驱动单元包含了Dcode总线、系统总线、通用DMA1总线、通用DMA2总线,其中Dcode总线负责连接闪寸的数据接口、系统总线负责协调DMA的访问、通用DMA1总线负责AHB主控接口与总线矩阵连接;4个被动单元包括内部SRAM、内部FLASH、FSMC、从AHB到APB的连接APB设备;总线矩阵是负责来协调系统总线与DMA主控总线之间的访问,而AHB外设依靠总线矩阵和系统总线连接,并且允许DMA访问;AHB/APB桥主要负责同步连接。其应用十分广泛,在建筑、安防、消防、智能家居、工业自动化等领域。

本智能浇花系统的主控模块使用的STM32F103C8T6芯片的微型处理器,电路设计如图3.1所示。该型号的芯片内集成了各种电路,由电源电路、复位电路、ADC转换电路等部分组成。其中,电源电路负责为整个系统提供供电电源,本STM32F103C8T6芯片规定供电电源为3.3V,在38管脚接入,由于本系统的一些外设需要5V的电源,所以在STM32F103C8T6芯片的18管脚接入了5V电源并通过内置的稳压芯片将其转换为符合STM32F103C8T6芯片要求的3.3V;复位电路是为程序提供的初始化功能,如果要重新进行启动,可以通过复位电路的按钮来操作,从而达到了初始化整个程序的目的;ADC转换电路负责将传感器采集到花卉种植环境信号转换为STM32F103C8T6单片机可以进行处理和计算的数字信号;具有一体化、简易化、灵活化的特点,该电路中的其余管脚和接口用来负责连接各传感器设备、报警设备以及执行设备,实现信号通信

图3.1 主控模块电路设计

第4章 软件设计

4.1 编译语言介绍

C语言是所有计算机语言中的基础,C生万物,也是所有程序员学习编程的第一门语言,它在1972年的时候由丹尼斯·里奇和肯·汤普逊在开发。C语言虽然原始,但是它保留了很多优势,所以直到现在也被很多人使用,首先,它在设计上具有自顶向下的特性,能够对程序进行结构化和模块化设计;其次,在编码过程中,它具有高效、快速的特性;然后,C语言程序还可以在不同的操作系统上运行,只需要稍作修改进行适配即可,具有可移植性、兼容性的特点,如果程序员需要更换设备进行编码,会很方便;最后,C语言也是一款面向程序员的语言,程序员可以直接通过C语言来访问硬件、操作内存中的位信息等。

本智能浇花系统属于一款硬件程序,硬件的开发是通过在Keil平台使用C语言进行编码,来实现硬件各功能模块,包括传感器的工作代码、单片机的工作代码等,所以本系统的关键开发技术是C语言。

4.2 系统主程序设计

系统的软件设计为本智能浇花系统的工作流程介绍,旨在更清晰、更明了地知道程序地底层逻辑。其主程序的流程设计如图4.1所示。首先运行main()程序,首先初始化程序各功能模块,通过按键来选择程序的功能模式,再设置各个参数阈值;然后启动程序的各个传感器设备开始采集鲜花种植环境信号,并将信号进行数模转换为数字信号显示到OLED显示屏上。如果选择自动模式,程序会根据采集到的信号进行判断是否符合要求,若不在要求范围内,由主控模块自动控制对应的执行设备进行处理和改善;如果选择手动模式,操作用户可以根据采集到的信号情况手动控制按键来启动和关闭对应的执行设备开关。

图4.1 程序总体软件流程设计

4.7 执行模块流程设计

本系统的执行模块有水泵、风扇、加湿器和LED个执行设备,可以通过按键控制。当设置为自动模式的时候,本系统的执行设备会根据传感器检测到的数据情况,作出对应的操作,命令由MCU进行控制;当设置为手动模式的时候,操作按键可以人为的控制执行设备开关,其执行模块软件流程设计如下图4.6所示。

图4.6 执行模块软件流程设计

第5章 系统实现与调试

5.1系统实现

本智能浇花系统实现包括了主控模块、数据采集模块、执行模块、按键模块、显示模块、报警模块。不同的模块的操作和实现结果有所区别。

首先,在主控模块中,焊接了STM132F103C8T6型号的单片机在PCB板上,它是一款微型的处理器,作为程序的“大脑”来使用,所有的控制指令全部由单片机来发送和接收,以及所有的数字信号由单片机来进行处理和计算,实现环境异常判断。在数据采集模块中,所有传感器以单总线的方式来连接至单片机,进行花卉种植土壤湿度信号、温湿度信号、光照强度信号、二氧化碳浓度信号的采集。在显示模块中,选择了0.96尺寸的OLED显示屏,可以清晰地读取花卉种植湿度数据显示出来,提供给操作人员查询。在执行模块中,当检测到土壤湿度过低的时候,会触发水泵进行浇水;当检测到温度过高的时候,会触发风扇进行降温;当检测到湿度过低的时候,会触发加湿器进行加湿,当检测到光照强度过低的时候,会触发LED灯进行照明。在报警模块中,当二氧化碳浓度过高的时候,会触发蜂鸣器进行报警,通知工作人员进行及时干预。程序下位机部分的功能实现界面如下图5.1所示。

图5.1 系统下位机功能实现图


http://www.ppmy.cn/devtools/146110.html

相关文章

快速掌握Elasticsearch检索之二:滚动查询(scrool)获取全量数据(golang)

Elasticsearch8.17.0在mac上的安装 Kibana8.17.0在mac上的安装 Elasticsearch检索方案之一:使用fromsize实现分页 1、滚动查询的使用场景 滚动查询区别于上一篇文章介绍的使用from、size分页检索,最大的特点是,它能够检索超过10000条外的…

OCR(五)linux 环境 基于c++的 paddle ocr 编译【CPU版本 】

1. 下载 下载opencv4.10 2. 编译opencv 2.1 安装依赖库 sudo apt install -y g ++ sudo apt install -y cmake sudo apt install -y make sudo apt install -y wget sudo apt install -y unzip sudo apt-get install build-essential libgtk2.0-dev libgtk-3-devlibavcodec-…

一篇文章学会HTML

目录 页面结构 网页基本标签 图像标签 超链接标签 文本链接 图像链接 锚链接 功能链接 列表 有序列表 无序列表 自定义列表 表格 跨列/跨行 表头 媒体元素 视频 音频 网站的嵌套 表单 表单元素 文本框 单选框 多选框 按钮 下拉框 文本域和文件域 表…

mysql部署(5.7.31)

下载地址:MySQL :: Download MySQL Community Server (Archived Versions) 因为系统是Kylin Linux Server V10,底层是centos7,所以选择下面版本 一、删除原来安装的mysql 1.查询并删除 [rootlocalhost /]# find / -name mysql find: ‘/ru…

Windows Subsystem(副系统)

目录 Windows Subsystem for Linux (WSL): Windows Subsystem for Android (WSA): 其他 Windows 子系统: Windows 子系统(Windows Subsystem)是微软在 Windows 操作系统中引入的一种技术,它允许在 Windo…

打造高效美颜体验:直播APP美颜SDK技术原理与开发实战

随着直播行业的迅猛发展,越来越多的直播平台为主播提供了美颜功能,提升观众的观看体验。美颜SDK(Software Development Kit,软件开发工具包)作为直播APP中不可或缺的一部分,承担着实时优化视频画质、改善主…

电子应用设计方案75:智能家庭智能锁系统设计

智能家庭智能锁系统设计 一、引言 智能家庭智能锁系统作为家庭安全防护的重要环节,为用户提供了更加便捷、安全和智能化的门锁解决方案。本设计方案旨在打造一个功能强大、性能稳定且易于使用的智能锁系统。 二、系统概述 1. 系统目标 - 实现多种开锁方式&#xf…

数据仓库和数据湖 数据仓库和数据库

数据仓库和数据湖是两种不同的数据存储解决方案,它们在设计、用途和数据管理方式上有着显著的区别。以下是数据仓库和数据湖的主要区别: 1. 数据结构:• 数据仓库:通常存储结构化数据,这些数据经过清洗、转换和加载&a…