搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
2023面试高手
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
Prompt Engineering入门教学(看这一篇就够!)_prompt engineering教程
2
群晖Nas笔记_filestation5 删除
3
kafka的ack机制,幂等性_kafka的重试机制和ack机制
4
视频汇聚EasyCVR平台视图库GA/T 1400协议与GB/T 28181协议的区别
5
Python中异常处理传递性_python异常的传递性
6
Git安装教程超详细(Windows系统)
7
nginx 编译和安装ssl模块_nginx安装编译ssl
8
单链表的基本操作(全)
9
力扣算法刷题顺序_力扣刷题题目类型顺序
10
真实场景的双目立体匹配(Stereo Matching)获取深度图详解
当前位置:
article
> 正文
机智云AIoT+STM32F407ZGT6单片机+微生态花园控制系统设计
作者:2023面试高手 | 2024-05-30 11:04:11
赞
踩
机智云AIoT+STM32F407ZGT6单片机+微生态花园控制系统设计
摘要:以STM32F407ZGT6单片机为核心控制器设计了一种微型生态花园控制系统,将传感器技术、WiFi技术、摄像头技术、自动追光技术、μC/OS-Ⅲ实时操作系统结合起来,实现对花园环境以及动植物情况的实时监控和及时控制,并具有环境温度、环境湿度、土壤湿度、光照强度监控,鱼缸自动换水、增氧以及宠物自动喂养等功能。
0 引言
随着城市生活节奏越来越快,都市白领人群也越来越多地希望绿色微生态能够进入自己的家庭阳台空间,开始更多地从生态角度改善自己的生活环境。
当前物联网技术的应用,使得生态空间的控制技术朝人工智能化方向迅速发展[1]。新技术的应用使得微生态阳台花园的管理通过智能自动化系统实现了实时控制,代替了原有落后的开关按钮控制的管理方式[2],在当前已经成为智能家居市场的主流需求[3]。
这样都市忙碌的白领人群就可以不必耗费过多的时间与精力去管理家庭花园生态系统,也不用花大量精力去学习养鱼、绿植养护的知识技能,更不用去请专人管理维护,直接使用智能绿植养护阳台系统就可以实现养护一体化。
1 系统总体框架设计
微型生态花园控制系统基于现实背景[4]设计,以STM32F407ZGT6单片机为核心控制器,通过μC/OS-Ⅲ实时操作系统和TFT-LCD主控显示屏设计出便捷友好的用户界面,实时显示环境参数信息。系统采用成熟的物联网技术进行通信连接,用户可以通过
机智云
和手机App连接,实现云端传输数据功能。
硬件是控制系统的基础和核心,因为其不仅直接影响到系统的稳定性、准确性、快速性及能耗等,还在一定程度上决定了系统的上限。总之,系统硬件的设计是非常关键的部分。微生态花园控制系统的硬件主要以STM32F407ZGT6单片机为控制核心板,搭载TFT-LCD触摸显示屏、OV5640-720P高清摄像头、WiFi模组等。其中DHT11温湿度传感器、土壤湿度传感器组成检测功能模块,用来检测微生态花园的温湿度和土壤湿度等环境参数。
2 自动灌溉系统
自动化灌溉系统首先为自动化灌溉区域规划做准备。由于自动灌溉系统的工作原理,一组路径在同一时间只能以一个频率自动灌溉,因此采取以下措施区分灌区的草种习性。例如,多年生铁线莲、月季之类,不耐涝、不耐高温的可以划分成一组,灌水的持续时间可以设置得短一些,频率可以低一些;而蓝雪花、绣球花等水生植物再分一组,灌水的持续时间设置得更长更频繁;对于耐旱、耐高温的沙漠玫瑰、仙人掌等植物来说,它们对水分的需求并不是很大,分为另一组,灌水的持续时间可以设置得更短一些。
系统工作中,当土壤含水量低于一定阈值时(该阈值可通过可变电阻进行调节)指示灯就会亮起,从而检测到该区域内土壤湿度低于当前植物所适宜的湿度,单片机即可控制继电器操作小水泵进行灌溉。
3 太阳能自动追光系统
太阳能是一种清洁的绿色能源,也是最丰富的可再生能源,是未来理想的绿色新能源,因此采用光伏发电技术将太阳能转化为电能,用于实现系统运行的续航并节约能源。太阳能自动追光系统主要由2个步进电机以及驱动器、4个光敏电阻、1个主控芯片、1块太阳能板构成,具体系统框架如图2所示。
图1 系统总体设计框架
图2 系统框架
太阳能板的方向控制能够实现360°追光,它的4个方向分别放置4个光敏电阻,然后通过判断对向的两个电阻的大小控制步进电机应该往哪个方向进行转动。为了实现通过读取光敏电阻的阻值控制太阳能板方向,这里采用串联分压的方式,如图3所示。
图3 串联分压电路
ADC接单片机引脚,原理就是串联分压,当外界光发生变化的时候,光敏电阻的阻值发生变化,ADC读取的就是光敏电阻分压的数值。因为两个光敏电阻的阻值是一样的,那么R1和R2在光照一样的环境下,ADC引脚所读取到的电压值应该是3.3/2=1.65 V,也就是说,当ADC所读取到的电压值在1.55~1.75 V (误差±0.1 V)时,两个光敏电阻所接收的光强是一样的。
因为用的是5516光敏电阻,光照越强,阻值越小,电压也就越小,所以,当ADC读取到的电压值,也就是R1的电压值大于1.75 V时,说明R2的光照强度大于R1,步进电机就会往R2方向移动,当最终读取到的电压值平稳在1.55~1.75 V时,步进电机才会停止移动;相反,当ADC值小于1.55 V时,步进电机就会往R1方向移动,当电压值平稳在1.55~1.75 V时,步进电机才会停止移动。可以以同样的办法在另外两个方向上设计同样的一个串联分压电路,从而达到同样的效果。
最后,太阳能板就可停留在光照强度最强的地方,然后通过光伏发电对蓄电池进行充电。
4 鱼缸
鱼缸主要由自动定时换水系统、自动定时供氧系统、自动定时喂食系统三部分构成,该设计可以帮助出差在外的用户照顾鱼缸里的鱼类,减少用户的担忧。
4.1 自动定时换水系统
在换水过程中依靠水位传感器来判断鱼缸中的水是否抽完以及抽进鱼缸里的水是否到达设定水位,防止水漫出来。该换水系统利用Water Sensor水位传感器监测水位,该模块主要是利用三极管的电流放大原理:当液位高度使三极管的基极与电源正极导通时,在三极管的基极和发射极之间就会产生一定大小的电流,此时在三极管的集电极和发射极之间就会产生一个一定放大倍数的电流,该电流经过发射极的电阻产生特定电压,被AD转换器采集。
只要设定好鱼缸最大水位时ADC的值以及鱼缸在被抽完水后ADC的值,然后通过继电器控制小水泵,设定好时间,就可以进行鱼缸的自动换水操作。换下来的废水可以用于灌溉,能够节约水资源,实现废水的循环利用。
4.2 自动定时供氧系统
采用供氧泵在空气中抽取氧气,然后将导管放入鱼缸中,设定好时间,就可以进行定期供氧。
4.3 自动定时喂食系统
自动定时喂食系统由步进电机、装料器皿构成,使用起来非常方便,将鱼料放进装料器皿中,然后通过步进电机旋转,鱼料就可以经出料口送出。系统可以根据鱼类数量的多少进行供料,为控制出料量,防止出料过多,出料口采用小孔设计。发送脉冲给步进电机,可使其慢速旋转360°,当出料口位于下方时(此时旋转180°),物料将受到重力作用,通过出料口落入鱼缸中。那么只要设定好时间来驱动步进电机,就能达到自动喂食的效果。
5 宠物屋
宠物屋能够给予宠物舒适的环境,减少病菌的侵害,保证宠物的身体健康,保护家庭的环境,更重要的是可以减轻用户的负担,也为微生态花园增添了一份生机。该设计主要包括监视宠物屋环境温湿度的传感器、空气净化器,还有紫外线杀菌消毒,OV5640摄像头能够实时监控宠物情况,以便实现远程喂食、喂水等功能。
通过主控芯片STM32F407ZGT6控制DHT11温湿度传感器,将采集到的信号运算后实时显示在TFT-LCD显示屏上;同时,通过
esp8266
Wi-Fi芯片将数据传输到手机App上,用户可以通过手机发送指令来进行相应的操作。
(1) 空气净化器能够有效去除空气中的异味,还能分解空气中的细菌,其中的负离子能够有效捕捉空气中的有害物质,净化空气。HEPA是一种高效的过滤材料,可以有效过滤空气中的悬浮颗粒物。这是一个模块,只要接入电源就可以正常使用。
(2) 为防止细菌的滋生,宠物屋内壁上放了4个UV紫外线发光二极管,其具备杀菌和消毒的作用,利用UV紫外灯进行定时杀菌操作,可以抑制细菌的繁殖。
(3) 监控系统主要由步进电机和OV5640摄像头组成,步进电机可以使摄像头进行360°旋转,进而实时观察宠物的动态和宠物屋的工作状态;摄像头将采集到的信息通过ESP8266芯片上传到机智云平台,然后在手机的人机控制界面上显示出来;用户可以通过手机来查看宠物当前的情况。
(4) 喂食系统主要由STM32F407ZGT6主控芯片、步进电机、ESP8266 Wi-Fi模块、OV5640摄像头组成。用户通过App摄像头功能查看到宠物碗中没有了食物,就可以通过手机App发送指令到机智云
物联网平台
,然后通过Wi-Fi模块接收到信号,进而通过单片机控制步进电机打开阀门,食物和水就会自动加到宠物的碗里。
6 μC/OS-Ⅲ实时操作系统
μC/OS-Ⅲ系统能将需要操作的硬件实时显示在TFT-LCD上,为使人机界面更加直观、方便,加入图形界面效果。由于保存的是bmp图像,需要先连接bmp图像的数据格式。在STM32上采集的数据格式是RGB565,方便在TFT-LCD上显示。bmp保存在SD卡上,通过FATFS文件系统进行操作,图片保存步骤如下:
(1) 配置bmp的图片头信息;
(2) 设置数据格式掩码;
(3) 写入图像数据,并使用FATFS文件系统来管理SD卡。
7 机智云物联网平台
首先,传感器采集到的环境数据传送给STM32F-407ZGT6串口与EPS8266 Wi-Fi模组连接,利用无线传感器网络将数据上传至机智云云端,实现数据存储,便于分析。并在终端显示数据,达到远程观测、远程控制的目的。
随后进行应用开发,在机智云目录处找到“MCU开发”,点击“进入”,选择“独立MCU模式”,然后选择正在用的单片机或开发板的芯片型号所对应的硬件平台。
接着,在机智云官网上成功创建设备产品,机智云为该产品分配Product Key和Product Secret参数。Product Key参数是由开发者写入设备MCU (设备主控板),并告知Wi-Fi模块,Wi-Fi模块登录机智云后,机智云将会识别该Product Key的产品。Product Secret参数是App开发或服务器对接时所使用的参数。
再次,
上位机App与单片机的连接。全部设计好后,到机智云的
下载中心
下载刚刚创建的App,之后就可以通过手机与单片机通信的ESP8266 Wi-Fi连接到同一个网络下,然后就可以进行数据的传输了。
最后,用户可以在App上发送相应指令,通过机智云平台接收数据,与单片机相连的ESP8266 Wi-Fi接收到指令后通过控制系统实现相应操作,从而达到远程监视和控制的目的。
8 结语
本文所述控制系统通过智能控制及物联网嵌入式技术,实现了对阳台微生态花园的智能化控制。在设计过程中,除了常规的温湿度调节、追光系统、宠物屋和鱼缸控制等智能操作外,还能通过改变终端传感器应用节点,分层分级管理获取空间参数,实现更多的智能控制功能。
因此,本设计应用范围可拓展性强,不仅可以实现阳台微生态系统的智能调节和远程操作,还可以采用新方法、新设计,广泛运用于其他更多的生态环境如农业大棚、生态养殖等场景的监测和远程控制。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/2023面试高手/article/detail/646678
推荐阅读
article
Spark
机器
学习
实战
:从
入门
到实践_
spark
入门
实战
...
随着大数据和
机器
学习
技术的快速发展,越来越多的公司和个人开始使用
Spark
作为他们的
机器
学习
平台。
Spark
是一个...
赞
踩
article
数据
为
墨
,
智能
作笔 | 画一卷新
姑苏
繁华
图...
在清代长卷画历史中
,
有一幅独树一帜的作品
,
名
为
《万笏朝天图》。在长达17米的长卷上
,
由苏州城郊开始
,
以城西天平山
为
中心展...
赞
踩
article
AI
GC
技术
:普通人如何利用
AI
提升
写作能力
...
AI
GC
技术
的核心优势之一是能够根据用户的个性化需求自动生成内容。通过分析用户偏好和行为数据,
AI
GC
能够创造出符合用户...
赞
踩
article
安卓逆向 -
sekiro
实战某
app
_
sekiro
+
andriod
教程
...
本期主要是结合前面所讲的平头哥和
sekiro
,进行一个实例演示通过重打包APP的方式注入
sekiro
RPC框架,分析推荐...
赞
踩
article
Grafana
Docker
部署
搭建(史上最全)
_
docker
部署
grafana
...
grafana
是一个非常好用的数据可视化平台,常常应用于显示监控数据,底层数据源可以支持influxDb、graphit...
赞
踩
article
python
异常之
assert
语句
_
python
assert
语句
...
python
的
assert
语句
,是一个断言
语句
。用于断言某个表达式的值是否符合预期,不符合则停止运行,并且触发Asser...
赞
踩
article
Android
Studio
开发
环境
快速搭建(超详细)_
配置
android
开发
环境
...
Android
Studio
开发
环境
搭建 1.下载JDK、AS1.1 JDK下载1.2 AS下载1.3 百度云资源统一...
赞
踩
article
java
感觉很菜
不敢
出去
面试
_
一次
java
面试
经历分享...
首先呢,肯定是要感谢IT
面试
网提供的这次模拟
面试
的机会,也很荣幸能够参加这次模拟
面试
,真的是机会难得呀!对于我这种Jav...
赞
踩
article
读书笔记
:
《
大规模
语言
模型
:
从理论到实践》
第一章
...
大规模
语言
模型
(LLM)是一类包含数十亿甚至数千亿参数的深度神经网络,它们通过自监督学习在大量无标注文本上进行预训练,以...
赞
踩
article
链表
的
实现
(C
语言
)_c
语言
链表
实现
...
链表
是一种链式存储结构,相邻节点通过链相连。与顺序存储结构相对应。本篇博客介绍了
链表
的
实现
,包括节点与结构体、节点与链、...
赞
踩
article
mysql
8.0
.3
linux
,如何在
Ubuntu
Linux上
安装
MySQL
8.0
.11...
继
MySQL
5.7之后,直接跳到了
MySQL
8.0
,官方说这次来了个大升级,其他的不说,就访问速度是5.7的2倍,因...
赞
踩
article
【火炉炼
AI
】
机器
学习033-
构建
电影
推荐
系统
...
【火炉炼
AI
】
机器
学习033-
构建
电影
推荐
系统
(本文所使用的Python库和版本号: Python 3.6, Numpy...
赞
踩
article
python
name
is
not
defined
_
Python
:
name
is
not def...
D'après ce que je vo
is
, au niveau indentation, jeu = clHanoi...
赞
踩
article
STM32
时钟
配置
_
stm32
的ahb
时钟
是多少...
本文以外部高速
时钟
源HSE为例,介绍
STM32
F4
时钟
配置
实现。一、概述
STM32
F4
时钟
树如下图所示:上图(上图中的1...
赞
踩
article
头歌C语言实训项目-
数组
、
指针
和
函数
综合
编程
练习
_头歌实践教学平台
数组
综合
实训(公共实验四)...
编写一个计算任意 m 行 n 列二维
数组
中元素的最大值,并指出其所在的行列下标值的
函数
,利用该
函数
和动态内存分配方法,计...
赞
踩
article
Leecode
热题
100
--
二分
查找
--
-33:搜索旋转排序矩阵...
二分
查找
--
-搜索旋转矩阵
Leecode
热题
100
--
二分
查找
--
-33:搜索旋转排序矩阵 ...
赞
踩
article
分享一款嵌入式开源
按键
框架
代码
工程
MultiButton
...
MultiButton
是一个小巧简单易用的事件驱动型
按键
驱动模块。Github地址:https://github.co...
赞
踩
article
全球
晶圆
产能
排名
:台积电仅次三星...
半导体市场研究机构 IC Insights 公布2015 年
全球
晶圆
厂
产能
排名
,前十名变动不大,仅格罗方德(Global...
赞
踩
article
大
数据
框架
Hadoop
和
Spark
的异同_
大
数据
框架
hadoop
和
spark
的相同点...
谈到
大
数据
,相信
大
家对
Hadoop
和Apache
Spark
这两个名字并不陌生。但我们往往对它们的理解只是提留在字面上,...
赞
踩
article
python
神经网络
自动优化_
TensorFlow
神经网络
优化策略
学习
...
在
神经网络
模型优化的过程中,会遇到许多问题,比如如何设置
学习
率的问题,我们可通过指数衰减的方式让模型在训练初期快速接近较...
赞
踩
相关标签
机器学习
spark
人工智能
大数据
物联网
编程语言
数据分析
aigc
AIGC
ai
AI写作
android
rxjava
docker
grafana
容器
python
开发语言
前端
as
android studio
java感觉很菜不敢出去面试
语言模型
自然语言处理
神经网络