目录
前言
这是一个基于STM32和Zigbee的智能农业监控系统,从机端通过温湿度、光照和土壤湿度传感器采集环境数据,通过OLED本地显示,并支持自动/手动模式切换——自动模式下可根据预设阈值自动控制水泵、风扇和补光灯,手动模式下可通过按键直接控制设备;主机端和APP端均通过MQTT协议与设备通信,实现数据可视化展示、阈值设置、模式切换及远程控制功能,构成完整的物联网农业监控解决方案。3
关注微信公众号--星之援工作室 发送关键字(项目清单)
可获取项目清单资料
⚠️⚠️(本文章仅提供思路和实现方法,并不包含代码,需要代码的同学请自行联系博主)
⚠️⚠️(有疑问或需要定制或者技术支持等,也请自行联系博主)⚠️⚠️
一 连线图
开发板本身自带一个LED ,这个LED作为我们查看网络连接状态和获取数据状态的说明
(1)OLED显示屏中会显示联网状态,若MUC上面的的LED处于闪烁状态,则说明我们的设备处于正常运行,若LED灯不再闪烁,请按复位键将程序手动复位一次
(2)硬件每隔8秒会向APP传输一次数据。
热点名字:NET密码:12345678,请使用2.4GHZ频率的无线网。
2 PCB效果
3 实物效果
4 APP效果
5 功能概括
(1)硬件端
从机端
- STM32F103C8T6:用于所有程序的中控和模块数据通信;
- 温湿度传感器:获取环境的温湿度
- 光照传感器:用于获取区域的光照强度
- 土壤湿度传感器:监测土塘湿度,用于自动模型下,水泵的调节
- 水泵:可以设置土壤湿度阈值,控制水泵的开启和关闭,自动模式下,可以由阈值自动控制
- 风扇: 可以设置环境温度阈值,在自动模式下,实现自动通风功能
- 补光灯: 可以设置光照阈值,在自动模式下,实现自动补光功能
- 0.96寸OLDE:用于显示当前当前环境数据。
- Zigbee组网进行数据的上报
长按按键1可以切换设备手动和自动模式
在手动模式下,短按按键2可以开启和关闭水泵
在手动模式下,短按按键2可以开启和关闭led
主机端
- 使用MQTT协议与设备进行信息交互
- 可采集到底层设备数据并且展示到界面UI中;
- 可以设置环境温度,和土壤湿度,光照阈值
- 可以主动切换设备的手动模式或者自动模式
- 手动模式下,可以远程控制设备,自动模块下,可以使用阈值控制设备
- 可以主动切换设备的手动模式或者自动模式
- 手动模式下,可以远程控制设备,自动模块下,可以使用阈值控制设备
(2)APP端
- 使用MQTT协议与设备进行信息交互
- 可采集到底层设备数据并且展示到界面UI中;
- 可以设置环境的湿度,温度,和土壤湿度阈值
- 可以主动切换设备的手动模式或者自动模式
- 手动模式下,可以远程控制设备,自动模块下,可以使用阈值控制设备
(3)云平台
只是链接各个设备使用,采用MQTT即时通讯;
(4)演示视频
通过网盘分享的文件:T2.1.多节点智能农业-Zigbee+WiFi.mp4
链接: https://pan.baidu.com/s/1EVxmlA6F2WxsZiNLndaQjQ?pwd=XZY0 提取码: XZY0
--来自百度网盘超级会员v6的分享
二 底层代码使用方式
1 使用说明
(1). 使用的时候设备会自动连接WIFI
热点名字:NET密码:12345678,请使用2.4GHZ频率的无线网。
(2). 当设备处于正常状态的时候,开发板上面的LED会处于闪烁的状态。
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
2 下载程序
- 先根据原理图进行连线,连接好以后在做后面的操作
- 打开手机热点 热点名字:NET密码:12345678
- 打开程序(硬件由工作室出的可以忽略下载程序这部分)
三 APP使用方式
下载APP
(1)操作方式:
使用Android手机安装APK进行操控
安装Android studio导入项目使用模拟器
官网下载最新版本
https://developer.android.google.cn/studio?hl=zh-cn
安装包(工作室使用版本)链接:
https://pan.baidu.com/s/1DnRGWeJt7XBTmzqHj1KRSQ?pwd=xzy0
提取码:xzy0
安装教程
(2)使用说明
打开APP后设备会自动订阅MQTT主题,等待1-5秒APP会自动获取到设备上的数据,若5秒内没有获取到设备数据,则请检测设备是否在线,若在线,则请重新打开APP进行数据的获取
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
四 程序架构及修改(通用)
链接:
https://pan.baidu.com/s/1TZkvdEOp-ERgi-2A1o-KWw?pwd=XZY0
提取码:XZY0
APP参数修改