基于物联网设计的园林灌溉系统(华为云IOT)_274
文章目录
- 一、前言
-
- 1.1 项目介绍
-
- 【1】项目开发背景
- 【2】设计实现的功能
- 【3】项目硬件模块组成
- 【4】设计意义
- 【5】国内外研究现状
- 【6】摘要
- 1.2 设计思路
-
- 1.3 系统功能总结
- 1.4 开发工具的选择
-
- 【1】设备端开发
- 【2】上位机开发
- 1.5 参考文献
- 1.6 系统框架图
- 1.7 系统原理图
- 1.8 实物图
- 1.9 模块的技术详情介绍
-
- 【1】Air724UG 4G模块
- 【2】DHT11模块
- 【3】土壤湿度检测模块
- 【4】MQTT协议
- 【5】继电器模块
- 【6】BH1750光强检测模块
- 1.10 总结
- 二、硬件选型(硬件买2份)
-
- 2.1 STM32开发板+LCD显示屏
- 2.2 USB下载线
- 2.3 Air724UG 4G模块
- 2.4 继电器
- 2.5 DHT11温湿度模块
- 2.6 PCB板
- 2.7 BH1750光敏传感器
- 2.8 土壤湿度传感器
- 2.9 抽水马达
- 2.10 电源扩展板
- 2.11 母对母杜邦线
- 2.12 稳压模块
- 2.13 电源插头
- 2.14 USB母头(接电机使用的)
- 三、部署华为云物联网平台
-
- 3.1 物联网平台介绍
- 3.2 开通物联网服务
- 3.3 创建产品
-
- (1)创建产品
- (2)填写产品信息
- (3)产品创建成功
- (4)添加自定义模型
-
-
- 【1】创建服务ID
- 【2】DHT11_T 环境温度 浮点数
- 【3】DHT11_H 环境湿度 浮点数
- 【4】SOIL 土壤湿度 浮点数
- 【5】BH1750 光照强度 浮点数
- 【6】MOTOR_SW 灌溉开关 整数
- 【7】SOIL_MAX 湿度阀值 整数
- 【8】run_mode 运行模式 整数(1自动 0手动)
-
- (5)创建完成
- 3.4 添加设备1【区域一】
-
- (1)注册设备
- (2)根据自己的设备填写
- (3)保存设备信息
- (4)设备创建完成
- (5)设备详情
- 3.5 添加设备2【区域二】
-
- (1)注册设备
- (2)根据自己的设备填写
- (3)保存设备信息
- (4)设备创建完成
- (5)设备详情
- 3.6 MQTT协议主题订阅与发布
-
- (1)MQTT协议介绍
- (2)华为云平台MQTT协议使用限制
- (3)主题订阅格式
- (4)主题发布格式
- 3.7 MQTT三元组
-
- (1)MQTT服务器地址
- (2)生成MQTT三元组
- 3.8 模拟设备登录【设备1】
-
- (1)填入登录信息
- (2)打开网页查看
- (3)MQTT登录测试参数总结
- 3.9 模拟设备登录【设备2】
-
- (1)填入登录信息
- (2)打开网页查看
- (3)MQTT登录测试参数总结
- 3.10 项目凭证
- 3.10 创建IAM账户
- 3.11 获取影子数据【以设备1为例】
- 3.12 修改设备属性【以设备1为例】
- 四、Qt开发入门与环境搭建
-
- 4.1 Qt是什么?
- 4.2 Qt版本介绍
- 4.3 Qt开发环境安装
- 4.4 开发第一个QT程序
- 4.5 调试输出
- 4.6 QT Creator常用的快捷键
- 4.7 QT帮助文档
- 4.8 UI设计师使用
- 4.9 按钮控件组
- 4.10 布局控件组
- 4.11 基本布局控件
- 4.12 UI设计师的布局功能
- 五、上位机开发
-
- 5.1 Qt开发环境安装
- 5.2 新建上位机工程
- 5.3 切换编译器
- 5.4 编译测试功能
- 5.5 设计UI界面与工程配置
-
- 【1】打开UI文件
- 【2】开始设计界面
- 5.6 设计代码
-
- 【1】获取token
- 【2】获取影子数据
-
- (1)获取当前时间并更新界面上的时间标签
- (2)设置请求URL和初始化网络请求
- (3)构造API请求URL
- (4)设置请求的头部信息
- (5)设置请求URL并发送请求
- (6)总结
- 【3】解析数据更新界面
-
- **(1)整体功能**
- **(2)代码逻辑解析**
-
- **1. JSON数据解析**
- **2. 检查JSON结构**
- **3. 提取 `shadow` 数组**
- **4. 提取 `reported` 和 `properties`**
- **5. 解析时间字段**
- **6. 提取具体设备数据**
- **7. 更新UI控件**
- **8. 添加条件样式**
- **9. 显示时间**
- **10. 判断设备是否离线**
- **(3)总结**
- 5.5 编译Windows上位机
- 5.6 配置Android环境
-
- 【1】选择Android编译器
- 【2】创建Android配置文件
- 【3】配置Android图标与名称
- 【4】编译Android上位机
- 5.7 设备仿真调试
- 六、 Air724UG 模块调试过程
-
- 6.1 官方文档
- 6.2 模块调试接线
- 6.3 串口调试过程
-
- 【1】AT命令
- 【2】读取模块厂商信息
- 【3】读取详细的固件版本
- 【4】查询卡是否插好
- 【5】查询信号质量
- 【6】查询网络注册状态
- 【5】查询模组是否注册上GPRS网络
- 【6】查询附着GPRS网络
- 【7】打开VOLTE功能
- 七、STM32代码设计
-
- 7.1 硬件连线说明
- 7.2 硬件原理图
- 7.3 硬件组装过程
- 7.4 硬件实物图
- 7.5 KEIL工程截图
- 7.6 程序下载
- 7.7 程序正常运行效果
- 7.8 取模软件的使用
- 7.9 4G模块与服务器通信
-
- (1)功能描述
- (2)代码逐段解析
- (3)总体功能总结
- 7.10 硬件初始化
-
- (1)功能描述
- (2)代码逐段解析
- (3)总体功能总结
- 7.11 4G模块-初始化
-
- (1)功能描述
- (2)代码逐段解析
- (3)总体功能总结
- 7.12 LCD界面显示
-
- (1)功能描述
- (2)代码逐段解析
- (3)总体功能总结
- 7.14 数据采集与显示
-
- 【1】项目核心代码解析
- 【2】核心功能解析
-
- **定时轮询**
- **采集环境数据**
-
- **(1)采集温湿度**
- (2)**显示温湿度**
- (3)**采集光照强度**
- (4)**显示光照强度**
- (5)**采集土壤湿度**
- (6)**显示土壤湿度**
- 【3】**显示其他信息**
-
- (1)**显示土壤湿度阈值**
- (2)**显示运行模式**
- (3)**显示灌溉开关状态**
- 【4】**自动模式运行逻辑**
- 【5】**上传数据到MQTT云端服务器**
- 【6】总结
- 7.15 按键代码
-
- (1)按键逻辑代码功能解析
- (2)功能描述
- (3)总体功能总结
- (4)使用场景
- 7.16 上位机命令处理
-
- **【1】功能概述**
- **【2】核心代码解析**
-
- **1. 接收数据和检测命令**
- **2. 控制灌溉开关**
- **3. 切换运行模式**
- **4. 提取土壤湿度阈值**
- **5. 处理服务器指令请求反馈**
- **6. 重置接收状态**
- 【3】**代码总结**
- **【4】建议和优化**
- 八、使用STM32代码的流程以及注意事项
-
- 8.1 第1步
- 8.2 第2步
- 8.3 第3步
- 九、代码移植更改
-
- 【1】STM32代码
- 【2】Qt上位机代码
- 十、完整STM32代码
- 任务书
-
- 一、课题名称
- 二、课题背景与意义
- 三、课题目标
- 四、任务要求
-
- 1. 硬件部分
- 2. 软件部分
- 3. 系统集成与调试
- 五、研究方法
- 六、进度安排
- 七、预期成果
- 八、参考文献
- 开题报告
-
- 一、课题背景与研究意义
- 二、课题目标与内容
-
- 1. 课题目标
- 2. 课题内容
- 三、研究方法与技术路线
-
- 1. 研究方法
- 2. 技术路线
- 四、硬件设计方案
- 五、软件设计方案
- 六、进度安排
- 七、预期成果
- 八、参考文献
基于物联网设计的园林灌溉系统(华为云IOT)
一、前言
1.1 项目介绍
【1】项目开发背景
随着物联网技术的迅猛发展,智能化的园林灌溉系统逐渐成为现代农业和园林管理的重要需求。传统的人工灌溉方式效率低下,且容易导致水资源浪费或灌溉不足,不利于植物的健康生长。而智能灌溉系统通过实时监测环境参数,结合自动化与远程控制技术,不仅能够提高灌溉效率,还能有效节约水资源,具有重要的应用价值。
当前,园林管理面临的挑战主要包括多区域管理的复杂性、人工操作的不便性以及精准灌溉的需求。基于物联网技术的园林灌溉系统可以通过无线通信和云端平台,将分布在不同区域的设备连接到统一的管理系统中,实现信息的实时采集与控制命令的快速传递。这种智能化的解