基于Lora通讯加STM32空气质量检测WIFI通讯
目录
目录
前言
一、本设计主要实现哪些很“开门”功能?
二、电路设计原理图
1.电路图采用Altium Designer进行设计:
2.实物展示图片
三、程序源代码设计
四、获取资料内容
前言
随着环境污染问题的日益严重,空气质量的监测与管理已经成为社会关注的焦点。传统的空气质量监测系统往往存在布线复杂、传输距离有限以及数据实时性不足等问题,难以满足现代环境监测的需求。为了解决这些问题,我们设计并实现了一种基于Lora通讯和STM32微控制器的空气质量检测系统,同时结合了WIFI通讯技术,以实现数据的远程传输和实时监控。
本系统采用STM32微控制器作为核心控制单元,利用其强大的处理能力和丰富的外设接口,实现了对空气质量传感器数据的采集与处理。同时,系统集成了Lora通讯模块,利用其低功耗、远距离传输的特点,实现了传感器节点与中心网关之间的无线数据传输。这种无线传输方式不仅简化了系统的布线,还大大提高了数据传输的灵活性和可靠性。
为了进一步实现数据的远程监控和管理,系统还集成了WIFI通讯模块。通过WIFI模块,系统可以将采集到的空气质量数据实时上传到云端服务器或远程监控中心,用户可以通过手机、电脑等终端设备随时随地查看空气质量数据,及时采取相应的措施。这种远程监控方式不仅提高了监测效率,还为环境保护和健康管理提供了有力的数据支持。
一、本设计主要实现哪些很“开门”功能?
1、空气中甲烷传感器智能监测
2、一氧化碳检测,实时更新数据值
3、两套设备。一套用于专门采集空气指令的涉笔,一套用于联网上云数据通讯设备
4、环境温度值与湿度值的检测
5、设备之间采用Lora模块进行通讯,通讯采用加密协议,通讯距离长大500-1000米
6、接收数据设备接收到Lora模块的数据,将其解码数据,通过WIFI模块联网上抛值云端。
7、手机APP绑定设备,连接设备获取数据值,实时掌握
8、当检测空气质量阈值超标是,会进行电机启动窗帘打开通风
二、电路设计原理图

三、实物展示图片


代码如下(示例):
#include "stm32f10x.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "timer.h"
#include "LED.h"
#include "adc.h"
#include "oled.h"
#include "function.h"
#include "dht11.h"
int main(void)
{
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
TIM2_Int_Init(5999,7199);//1000ms
LED_Init();
Adc_Init();
uart2_init2(9600);//LORA
Adc_Init2();
DHT11_Init();
delay_ms(500);
OLED_Init();
OLED_Clear();
ProLoraTXdata(1);
//温度:湿度:CO: 甲醛:
OLED_ShowCHinese(0,0,0);
OLED_ShowCHinese(18,0,1);
OLED_ShowCHinese(0,2,2);
OLED_ShowCHinese(18,2,3);
OLED_ShowCHinese(0,4,4);
OLED_ShowCHinese(18,4,5);
OLED_ShowCHinese(36,4,6);
OLED_ShowCHinese(54,4,7);
OLED_ShowCHinese(0,6,8);
OLED_ShowCHinese(18,6,9);
TIM_SetCompare1(TIM3,1500); //0度
//TIM_SetCompare1(TIM3,2000); //45度
//TIM_SetCompare1(TIM3,2500); //90度
SysReadata();
LED0=1;
while(1)
{
SysReadata();
if(F_start)
{
SysDispdata();
ProLoraTXdata(0); ProLoraTXdata(0);
LED0=!LED0;
F_start = 0;
}
}
}
四、获取资料内容

相关文章:
基于Lora通讯加STM32空气质量检测WIFI通讯
目录 目录 前言 一、本设计主要实现哪些很“开门”功能? 二、电路设计原理图 1.电路图采用Altium Designer进行设计: 2.实物展示图片 三、程序源代码设计 四、获取资料内容 前言 随着环境污染问题的日益严重,空气质量的监测与管理已经…...
STM32 极速入门第一天基础拓展 驱动i2c屏幕 ( 使用PlatformIO开发STM32单片机 )
输入输出模式解析 输出模式 在输出模式下,通常不需要设置上下拉电阻. 输出电平由 LL_GPIO_SetOutputPin 和 LL_GPIO_ResetOutputPin 函数直 接控制。 输入模式 在输入模式下,设置上下拉电阻是非常重要的. 输入引脚悬空时可能会导致不确定的电平…...
【WPF】Prism学习(五)
Prism Commands 1.错误处理(Error Handling) Prism 9 为所有的命令(包含AsyncDelegateCommand)提供了更好的错误处理。 避免用try/catch包装每一个方法根据不同遇到的异常类型来提供特定的逻辑处理可以在多个命令之间共享错误处…...
RabbitMQ的基本概念和入门
RabbitMQ 的基本概念和入门 RabbitMQ 是一款流行的开源消息队列中间件,实现了高级消息队列协议(AMQP)。它使用Erlang语言编写,具备高可用性、可扩展性和易用性等特点,广泛应用于各种分布式系统中。本文将详细介绍Rabb…...
Shell脚本6 -- 条件判断if
声明: 本文的学习内容来源于B站up主“泷羽sec”视频【shell编程(4)脚本与用户交互以及if条件判断】的公开分享,所有内容仅限于网络安全技术的交流学习,不涉及任何侵犯版权或其他侵权意图。如有任何侵权问题,…...
经验笔记:从生成 SSH 密钥到成功连接测试(以Gitee为例)
从生成 SSH 密钥到成功连接测试的经验笔记(以Gitee为例) 1. 生成 SSH 密钥对 选择合适的加密算法 ED25519: 密钥长度:私钥 256 位(32 字节),公钥 256 位(32 字节)&#…...
Object.defineProperty和响应式
Object.defineProperty()是一个监听对象属性变化的方法。一般情况下我们是不会直接使用的,或者说我们遇到的场景还没有这么高级。 最有名的例子就是Vue2的响应式实现,就是通过这个方法来实现的。 用起来不难,就是个API,只是用的…...
前端web
题目:制作带有下拉悬停菜单的导航栏 效果图 一、先制作菜单栏 <body> <div id"menu"> <div id"container"> <div class"item">游戏1 <div cla…...
DDNet 服务器配置教程 Linux 环境
DDNet 服务器配置教程 Linux 环境 配置之前可以参考一下官方网址给出的内容 官方网址:DDNet官方 环境说明 OS: Debian 11 安装 可以直接从官网下载,也可以使用这个链接: Linux_DDNet 下载链接 上文中给的链接会因为更新而出现版本落后的情况&#x…...
Vue 2 —监视器实现动态切换表单属性值
目录 一、需求背景 二、监视器语法 三、实例展示 1、HTML部分 2、JS部分 四、使用场景总结 1. 表单验证 2. 动态更新 UI 3. 数据同步 4. 计算属性的替代方案 计算属性的优势 : 简洁性: 监视器的优势 : 灵活性: 多属性依赖: 副…...
Qt_day10_程序打包(完结)
目录 1. 设置图标 2. Debug和Release版本 3. 动态链接库 4. 打包 5. 联系项目要求 Qt开发的程序最终都是要给用户使用的,用户的电脑上不可能装一个Qt的开发环境导入项目使用。因此项目项目开发完成后需要打包——制作成安装包,用户直接下载并安装即可使用…...
golang通用后台管理系统09(系统操作日志记录)
1.日志工具类 package log/**** 日志记录 wangwei 2024-11-18 15:30*/ import ("log""os""path/filepath""time" )// 获取以当前日期命名的日志文件路径 func getLogFilePath() string {currentDate : time.Now().Format("2006-…...
如何确保爬取的数据准确性和完整性?
在数据驱动的业务环境中,爬虫程序的准确性和完整性至关重要。本文将探讨如何使用Java编写爬虫程序,并确保其在爬取数据时的准确性和完整性。 1. 精确的HTML解析 确保数据准确性的第一步是精确地解析HTML。Jsoup是Java中常用的HTML解析库,它提…...
【java】JDK安装
Java Downloads | Oracle 中国 next 注意安装的路径 环境变量...
科技改变工作方式:群晖NAS安装内网穿透实现个性化办公office文档分享(1)
文章目录 前言1. 本地环境配置2. 制作本地分享链接3. 制作公网访问链接4. 公网ip地址访问您的分享相册5. 制作固定公网访问链接 前言 本文将详细介绍如何在群晖NAS上安装Synology Office和Synology Drive Server,并利用Cpolar内网穿透工具为本地文档配置固定的公网…...
基于Java Springboot甘肃旅游管理系统
一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 数据…...
03-axios常用的请求方法、axios错误处理
欢迎来到“雪碧聊技术”CSDN博客! 在这里,您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者,还是具有一定经验的开发者,相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导,我将…...
《天体》游戏配置要求介绍
《天体》是一款太空探索和基地建造生存游戏,而游戏的画面表现非常不错,需要的配置要求也不算高,CPU最低只需要英特尔的酷睿i3 4XXX 系列或者AMD的Ryzen 3 2.6ghz处理器。 天体要什么配置最低配置: 需要 64 位处理器和操作系统 操作系统 *: …...
【企业级分布式系统】 Kafka集群
文章目录 KafkaKafka 概述使用消息队列的好处 Kafka 的特性Kafka 系统架构Kafka 的应用场景Kafka 的优缺点 Kafka 集群部署下载安装包安装 KafkaKafka 命令行操作Kafka 架构深入 FilebeatKafkaELK 部署指南~部署 ZookeeperKafka 集群部署 Filebeat部署 ELK(Logstash…...
MySQL 中有哪几种锁?
在 MySQL 中,锁(Locks)是为了保证数据的一致性和完整性而设计的机制。常见的锁可以从粒度和操作类型两个角度分类。以下是详细介绍: 按 粒度 分类 1. 全局锁 描述:锁定整个数据库实例。用途:主要用于备份…...
探索Rufus全新应用场景:为老旧设备注入Windows 11新生命
探索Rufus全新应用场景:为老旧设备注入Windows 11新生命 【免费下载链接】rufus The Reliable USB Formatting Utility 项目地址: https://gitcode.com/GitHub_Trending/ru/rufus 还在为Windows 11严格的硬件要求而烦恼吗?你的旧电脑完全可以运行…...
大模型核心技术概述:Token、Prompt、Tool与Agent的关系详解
你是不是经常听人聊AI时蹦出这些词:LLM、Token、Context、Prompt、Tool、MCP、Agent?听着好像都认识,但真要问“这到底是啥”,又有点懵。今天把这些词一个个拆开揉碎,讲清楚它们到底是啥、有啥用、又是怎么串起来的。 …...
2026年各高校论文AI率新规汇总:双一流和普通院校标准差异
2026年各高校论文AI率新规汇总:双一流和普通院校标准差异 同一篇论文,知网52%,维普38%,万方21%。 为什么差这么多?不是平台乱搞,而是检测算法和判断标准不一样。理解了高校AI率新规背后的逻辑,…...
掌握小程序逆向工具:wxapkg解析与代码还原全流程指南
掌握小程序逆向工具:wxapkg解析与代码还原全流程指南 【免费下载链接】wxappUnpacker 项目地址: https://gitcode.com/gh_mirrors/wxappu/wxappUnpacker 当你需要逆向分析小程序包时,是否遇到过这些痛点?wxapkg文件无法直接查看内容、…...
draw.io桌面版终极指南:离线绘图革命与数据主权回归
draw.io桌面版终极指南:离线绘图革命与数据主权回归 【免费下载链接】drawio-desktop Official electron build of draw.io 项目地址: https://gitcode.com/GitHub_Trending/dr/drawio-desktop 你是否曾因网络中断而无法完成重要的图表设计?是否担…...
从PointNet++到SoftGroup:手把手带你复现5个经典3D点云分割算法(附PyTorch代码)
从PointNet到SoftGroup:5大3D点云分割算法实战解析与PyTorch实现指南 1. 3D点云分割技术演进与核心挑战 在三维视觉领域,点云分割技术正经历着从基础架构到复杂系统的革命性演变。不同于传统图像处理,点云数据具有非结构化、稀疏性和无序性三…...
PDF-Guru安全防护指南:从威胁识别到主动防御
PDF-Guru安全防护指南:从威胁识别到主动防御 【免费下载链接】PDF-Guru A Multi-purpose PDF file processing tool with a nice UI that supports merge, split, rotate, reorder, delete, scale, crop, watermark, encrypt/decrypt, bookmark, extract, compress,…...
Figma栅格系统深度解析:从基础设置到高级布局技巧
Figma栅格系统深度解析:从基础设置到高级布局技巧 当你第一次在Figma中拖动组件时,是否注意到那些神秘的蓝色线条突然出现又消失?这就是Figma栅格系统在默默工作。作为现代UI设计的隐形骨架,栅格系统远比表面看到的复杂得多——它…...
FPGA小白也能懂:用Verilog在Xilinx Vivado里驱动HC-SR04超声波模块(附完整仿真)
FPGA实战:从零构建超声波测距系统(VerilogVivado全流程解析) 第一次接触FPGA时,最让人头疼的莫过于如何将抽象的硬件描述语言转化为实际可运行的电路。去年我在指导电子设计竞赛时,发现学生们对超声波模块的应用需求很…...
Java毕业设计基于springboot+vue的智慧旅游系统
前言 SpringBoot智慧旅游系统通常采用B/S(Browser/Server)架构,这种架构使得用户可以通过任何支持Web浏览器的设备访问系统,无需安装额外的客户端软件,降低了用户的使用门槛。一、项目介绍 开发语言:Java …...
