Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
onenet
RT-Thread
星火一号
[RT-Thread x 大学生夏令营] 基于RT-SPARK 1的物联网-温湿度报警器
发布于 2023-07-26 02:14:05 浏览:467
订阅该版
[tocm] # “湿”半功倍,防患未“燃”--基于RT-SPARK 1的物联网-温湿度报警器 ## 1. 前言: 在信心化数字化高度发达的今天,各种监控、生产设备都逐步走向数字化。如何将数据及时准确地获取并能够被多种设备访问同时以直观地形式呈现,是当今数字化设备发展的重要命题。借助RT-Thread的实时操作系统以及OneNET物联网开放平台,我们能够将上述目标高效实现。 ## 2. 项目简介: **2.1. 项目名称:**具备物联网功能的温湿度报警器 **2.2. 设计思路:**本项目使用RT-Thread系统和以STM32F407为主控的开发板“星火一号”,实现一个温湿度报警器,报警器通过wifi连接将数据上传至OneNET云端,实现数据可视化,并显示在LCD屏上。 **2.3. 主要解决的问题:**当下对智能家居设备需求不断增加,本组实现的集成化温湿度报警器通过配置物联网功能,有助于在实时监测家庭环境温湿度的同时,将数据进一步可视化,提升家用设备智能性和居住环境安全性。 **2.4. 项目创新点:**通过设备端传感器件和控制设备、显示设备的集成式直连,提高生活质量,降低运营成本和维护费用。 ## 3. 系统设计说明: ### 3.1 硬件部分: 星火一号主控选用了目前行业中比较常用且学习门槛较低的STM32F407,具有众多的板载资源(Flash 存储、WIFI 通信、多个传感器),支持丰富的扩展接口。使用外设资源如下: **A.** AHT20 温湿度传感器 **B.** 19 灯等距全彩 LED **C.** 蜂鸣器 **D.** 240x240 并行 LCD **E.** RW007 WIFI ### 3.2 软件部分: ![图片1.png](https://oss-club.rt-thread.org/uploads/20230726/e7dde6a305ec4ae9e4c2d74c119f8d1b.png.webp)
LCD显示部分程序框图
![图片2.png](https://oss-club.rt-thread.org/uploads/20230726/9abba85c7cc22b14e8cb283ba323dba0.png.webp)
报警模块程序框图
![物联网模块程序框图.png](https://oss-club.rt-thread.org/uploads/20230726/f10f8b01bc43d90a10241fcddfc2b723.png)
物联网模块程序框图
## 4. 项目实施过程 ### 4.1. LED+蜂鸣器: 在```RT-Thread Setting```中下载```AHT10```软件包,用于温湿度传感器并加入头文件```"ath10.h"```。在板载驱动选项中开启```i2c3```功能后即可;通过`rt_thread_mdelay`和`rt_pin_write`语句实现延时和引脚输入输出控制。通过`aht10_read_humidity`和`aht10_read_temperatur`语句读取湿度和温度。 ### 4.2. LCD: 在程序中加入两个线程,一个用于接收传感器的数据,另一个用于把数据显示到LCD上;美观方面,显示图标。在网上下载图片,用工具转换成十六进制的数组然后在程序中用库函数输出到LCD上;个性化方面,为温度、湿度设置阈值。在main中定义几个函数,通过逻辑代码实现 ### 4.3. OneNET及其数据可视化: 在`RT-Thread Setting`中下载`rw007`软件包,用于将星火一号开发板与wifi连接,在板载驱动对`spi2`使能完成配置。同时还需要下载`onenet`软件包,联网成功后通过`mqtt`协议将检测到的温湿度数据上传到onenet云端,并对采集到的数据进行处理,完成数据可视化。 ## 5. 项目效果展示 ### 5.1 功能描述: **LED+蜂鸣器:** 实现温度湿度后台终端实时显示,并可在温湿度达到设定阈值时通过LED和蜂鸣器实现报警;温度阈值为30摄氏度,湿度阈值为90%(两者同时超过阈值时,蜂鸣器长鸣同时LED红黄灯常亮;仅湿度超过阈值时,蜂鸣器双鸣同时黄灯双闪;仅温度超过阈值时,蜂鸣器单鸣同时红灯单闪;若都在正常范围内则红黄灯交替闪亮)。 **LCD:** LCD实时显示温湿度数据,并显示各自的图标;当温度和湿度都没有超过阈值,显示笑脸,代表舒适的状态,当温度超过阈值(30℃)一段时间(避免在阈值附近波动),显示hot和热的表情,当湿度超过阈值(70%)一段时间,显示wet和湿的表情。 **OneNET及其数据可视化:** 在`RT-Thread Setting`中下载`rw007`软件包,用于将星火一号开发板与wifi连接,在板载驱动对`spi2`使能完成配置。使用`wifi join`和`wifi scan`指令来完成联网操作。成功联网之后,我们需要将设备接到云端服务器进行数据传送。我们需要下载onenet软件包,联网成功后通过mqtt协议将检测到的温湿度数据上传到onenet云端,并对采集到的数据进行处理,完成数据可视化。使用`onenet_mqtt_init`以及`onenet_upload_cycle`指令,将温湿度数据上传到onenet,并将数据流进行可视化处理。 ### 5.2 图片展示: **正常状态:红黄灯交替亮** ![Normal_RED.jpg](https://oss-club.rt-thread.org/uploads/20230726/6f2d043ea94254e3bfbb2eb348ca8cab.jpg.webp) ![Normal_YEL.jpg](https://oss-club.rt-thread.org/uploads/20230726/1e75ac68cf56e732a458a1fafe6220cf.jpg.webp) **过湿状态:黄灯双闪,蜂鸣器双鸣** ![Wet.jpg](https://oss-club.rt-thread.org/uploads/20230726/6ac57b2e807a40f04bb8ec8b9997deed.jpg.webp) **过热状态:红灯单闪,蜂鸣器单鸣** ![Hot.jpg](https://oss-club.rt-thread.org/uploads/20230726/d2938455616212573f0d8e811fe28485.jpg.webp) **OneNET物联网可视化** ![OneNET物联网可视化.bmp](https://oss-club.rt-thread.org/uploads/20230726/83c1022e80213952adbceb8df57e2c3b.bmp.webp) ## 6.成果展示 ### 6.1 代码开源: https://gitee.com/lynnn1/RT-Thread_SparkOne_TempHumi ### 6.2 视频展示: https://www.bilibili.com/video/BV1614y1X72q/?vd_source=3391c48079bc9228bc11850410ac0066
0
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
RT_Lynns
这家伙很懒,什么也没写!
文章
1
回答
0
被采纳
0
关注TA
发私信
相关文章
1
RT-THREAD在STM32H747平台上移植lwip
2
正点原子miniSTM32开发板读写sdcard
3
反馈rtt串口驱动对低功耗串口lpuart1不兼容的问题
4
Keil MDK 移植 RT-Thread Nano
5
RT1061/1052 带 RTT + LWIP和LPSPI,有什么坑要注意吗?
6
RT thread HID 如何收发数据
7
求一份基于RTT系统封装好的STM32F1系列的FLASH操作程序
8
RT-Thread修改项目名称之后不能下载
9
rt-studio编译c++
10
有木有移植rt-thread(nano)到riscv 32位MCU上
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
国产MCU移植系列教程汇总,欢迎查看!
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
Bootloader
AT
ART-Pi
Hardfault
CAN总线
FinSH
USB
文件系统
DMA
RT-Thread
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
ota在线升级
WIZnet_W5500
I2C_IIC
UART
flash
cubemx
packages_软件包
freemodbus
潘多拉开发板_Pandora
PWM
定时器
ADC
BSP
中断
编译报错
socket
keil_MDK
GD32
flashDB
Debug
MicroPython
msh
ulog
SFUD
SDIO总线
rt_mq_消息队列_msg_queue
本月问答贡献
出出啊
1506
个答案
339
次被采纳
小小李sunny
1423
个答案
281
次被采纳
张世争
740
个答案
161
次被采纳
crystal266
539
个答案
157
次被采纳
whj467467222
1218
个答案
146
次被采纳
本月文章贡献
出出啊
1
篇文章
5
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
3
篇文章
7
次点赞
crystal266
2
篇文章
1
次点赞
whj467467222
2
篇文章
2
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部