文章      动态     相关文章     最新文章     手机版动态     相关动态     |   首页|会员中心|保存桌面|手机浏览

jcm92

http://ww.kub2b.com/comjcm92/

相关列表
文章列表
  • 暂无文章
推荐文章
基于ESP32的智能家居控制系统(微信小程序)手机怎么测室内温度「基于ESP32的智能家居控制系统(微信小程序)」
发布时间:2025-04-20        浏览次数:1        返回列表

  1. 项目背景

目前,科技发展迅速,渗透到各行各业和生活的方方面面,室内设计与高科技相结合,出现了智能家居。所谓智能家居,就是利用物联网、传感器、智能控制技术将各种家电连接起来,实现智能化、自动化、人性化的生活环境。通过语音控制、远程控制、预约控制、个性化设计、一键控制等功能,进一步提高生活的舒适性、便利性和安全性。

该系统利用物联网的便利性,实现了家电的远程操作。具体来说,空调、加湿器、灯具、家庭影院等电器都是通过各种传感器监测室内温度、湿度、光强、烟雾浓度、室内是否有人等信息自动调整的。智能电器的语音控制采用人机交互设备和语音识别设备。智能电器的远程控制是通过移动终端和计算机终端实现的。家用电器的运行、监控屏幕、智能捕捉、报警等信息将实时反馈给用户。用户可以随时随地了解家中的具体情况,让用户体验离家如在家的感觉。与传统家居相比,智能家居有利于提高家居生活的便利性、舒适性和安全性。许多新社区或多或少都配备了一些智能家居设备,但距离真正的智能家居还有很长的路要走。未来,智能家居将成为现代生活的标准。

2.设计目标

该系统主要分为传感器监控模块、自动报警模块和远程控制模块三个模块。传感器监测模块包括环境温湿度和空气质量监测,用户可以在微信小程序上查看实时传感数据;自动报警模块在传感数据超过设定阈值时报警,提醒用户注意火灾;远程控制模块可通过微信小程序远程控制LED灯、风扇和加湿器的开关可以远程控制家用电器的开关。项目的整体功能是实时收集数据,并将数据上传到云平台,通过云平台浏览历史数据。项目主要分为两部分:硬件部分ESP32开发板数据采集与通信模块;软件部分是OneNET物联网平台端和微信小程序端。具体实现如下: 根据室内监控和家电操作的需要,设计系统实现的思路:通过传感器获取数据, 再由单片机处理数据,通信模块进行数据传输,平台端数据存储与处理,小程序端查看数据。

3.设备端硬件设计

3.硬件总体设计

如下图所示。

3.2单片机选型及传感器选型

3.2.1ESP32模块

SP32-WROOM-32 一般型Wi-Fi BT BLE MCU该模块功能强大,用途广泛,可用于语音编码、音频流量、MP3解码等。ESP32还集成了电容式触摸传感器、霍尔传感器、低噪声传感放大器等丰富的外设,SD卡接口,以太网接口,高速SDIO/SPI、UART、I2S 和I2C等。

3.2.2温湿度模块

本系统采集环境的温湿度选择 DHT11 温湿度传感器。DHT11 采用数字温湿度传感器 采用校准数字信号输出,可同时检测温度和湿度,采用专用数字模块采集 温湿度传感技术,能保证产品的高可靠性和稳定性。 传感器包括电阻式感湿元件和电阻式感湿元件 NTC 测温元件,利用元件的电气特性 温湿度的变化测量了环境的温湿度、元件和高性能 8 单片机相连。该产品具有 高品质、响应快、抗干扰强、性价比高。低功耗和非常小的体积使其应对 用于各种复杂场景。DHT11 为 4 针单排引脚封装,连接方便。DHT11 温湿度模块湿度模块下图所示。

3.2.3MQ-135检测模块

使用系统有害气体浓度监测 MQ-135 有害气体检测模块。MQ-135 气体传感器中使用的气敏材料是二氧化锡,在低污染空气中电导率较低。当传感器的位置存在时 传感器的电导率与空气中污染气体的浓度成正比。MQ-135 气体传感器对氨 气体、硫化物、苯系蒸汽灵敏度高,对烟雾等有害气体的监测也很理想。这种传感 该装置可检测烟雾和各种有害气体,是一种适合多种应用的低成本传感器。使用前必须加热一段时间,否则其输出电阻和电压不准确。MQ-135 有害 气体检测模块实物图如下图所示。

3.2.4光敏电阻模块

光敏电阻模块对环境光最敏感,通常用于检测周围环境的光 当环境光亮度达不到设定阈值时,模块的亮度触发单片机或继电器模块;DO 端输出高电平,当外界环境光线亮度超过设定阈值时,DO 端输出低电平;DO输出端可直接与单片机连接,通过单片机检测高低电平, 检测环境光亮度的变化;小板模拟量输出 AO 可以和 AD 模块连接,通过 AD 可以获得转换 更准确的环境光强值。光敏电阻传感器如下图所示。

3.2.5有源蜂鸣器模块

有源蜂鸣器是一种集成结构的电子信息器,采用直流电压供电有源蜂鸣器内部冲击,只要通电,程序控制方便,单片机可以发出声音,但无源蜂鸣器不能。有源蜂鸣器广泛应用于计算机、打印机、复印机、报警、电子玩具、汽车电子设备、电话、定时器等电子产品。

3.2.6继电器模块(本实验用其他电源供电,然后通过继电器接收信号控制风扇的打开)

继电器(英文名称:relay)它是一种电气控制装置,是当输入(激励)变化满足规定要求时,在电气输出电路中预定阶跃变化的电器。它有控制系统(也称为输入电路)和控制系统系统(又称输出回路)之间的互动关系。通常应用于自动化的控制电路中,它实际上是用小电流去控制大电流运作的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。继电器有低电平触发和高电平触发,本系统中采用高电平触发继电器。

当继电器供电时,电流开始流经控制线圈;结果,电磁体开始通电。然后衔铁被吸引到线圈上,将动触点向下拉,从而与常开触点连接。所以带负载的电路通电。然后断开电路会出现类似的情况,因为在弹簧的作用下,动触头将被拉到常闭触点。这样,继电器的接通和断开可以控制负载电路的状态

3.2.7 SSD1306模块

SSD1306是一款带控制器的用于OLED点阵图形显示系统的单片CMOS OLED/PLED驱动器。它由128个SEG(列输出)和64个COM(行输出)组成。该芯片专为共阴极OLED面板设计。

3.2.8风扇

风扇采用的是5V,0.2A的小风扇模块。此模块在此系统有两个用处,一是微信小程序控制风扇的开关,二是温度过高自动打开风扇降温

                    

 
    

  4.1.2、MQTT接入地址

 1、mqtt协议的接口端号是6002,而mqtts协议的接口端号是1883

 
    

2、数据如何发送给onenet

这里我们需要查阅onenet的相关文档

oneNET - 中国移动物联网开放平台

 
    
 
    

在setup()函数中定义了每5秒发一次信息到OneNET平台

 
    

3、在 setup()函数订阅命令下发主题

 
    
 
    

  4.1.3、测温湿度

使用DHT11模块,调用库

 
    

定义DHT11,数据引脚我接在IO13口

 
    

  4.1.4、测空气质量

我使用的是MQ-135模块,有两种方法,我不在累述

方法1.

 
    

  4.1.5、光敏电阻测光强

 
    

4.1.6、中断函数,当外界发出信号,此时主程序应该当外界信号产生就立马响应,而不是正好当外界发出信号的同时正在运行此函数。(例如,你一直按着开关持续5秒,当正好运行到这个函数发生响应。但是当有中断函数后,你轻轻一碰开关,函数就会立马响应,相当于这个函数一直在等待你发出信号。)非常重要

 
    

 5、总代码(需要一个DHT11,空气传感器,光敏电阻,led,ssd1306)

 
    

6、微信开发者工具

 

 

自己创建一个项目,直接替换index.js,index.wxml,index.wxss

index.js

 
    

index.wxml

 
    

index.wxss

 
    

小程序代码

链接:https://pan.baidu.com/s/1WICYIrtWHR9UBkXOsnpqVw?pwd=nmym 
提取码:nmym

总结:

随着社会的各方面的发展,智能家居逐渐走进了人们的家庭中,为人们带来更加舒适的生活,提高生活质量。在本次课程设计中,我通过ESP32为主控板,连接DHT11、MQ135传感器、光敏电阻、LED灯、继电器和、风扇、加湿器和有源蜂鸣器,结合OneNET物联网平台搭建了一个简单的智能家居控制系统。

本系统实现的功能如下:

(1) 通过微信小程序实现了对环境数据实时监测功能;

(2) 实现了远程控制LED灯、风扇的开关和加湿器;

(3) 实现了空气质量不好自动报警功能。

  1. 实现了天黑自动打开灯光和天黑回家自动打开灯光。
  2. 实现了显示屏实时显示室内温湿度和空气质量。
  3. 温度过高自动打开风扇,湿度过低自动打开加湿器。
  4.     在此次课程设计中,我采用了ESP32开发板作为主控板,OneNET物联网平台作为数据中继,微信小程序作为数据展示端,完成了一个简单的智能家居控制系统。传感器数据采集部分不难,难的部分是ESP32如何连接上OneNET物联网平台,通过在CSDN上找到的教程,按照教程一步一步的操作,首先需要开发板需要连接上WIFI,然后还需要连接上MQTT,当我连接WIFI后发现有些引脚不能读出模拟值,通过上网查找发现是,ESP32芯片中有ADC1和ADC2两个A/D转换器。使用Wi-Fi或蓝牙时,无法使用ADC2引脚。连接到ADC1的针脚正常工作,它们是GPIO32-36和GPIO39,此时才可以读出正确的模拟值。

开发板、OneNET物联网平台和微信小程序端三者之间都是通过MQTT通信的,MQTT协议是此次设计最重要的一部分。ESP32连接OneNET物联网平台:①可以通过MQTT直接连②可以通过MQTTS连接,但需要用到mqqtfx。中断函数非常有用