资讯详情

在ESP32/ESP8266上使用MicroPython利用MQTT发布BME280传感器数据(温度,湿度和压力)

了解如何使用MicroPython对ESP32或ESP通过8266板编程MQTT将BME支持280传感器读数(温度、湿度和压力)MQTT或任何MQTT任何平台的客户端。 例如,我们将传感器读数发布到Node-RED仪表板。

注:本教程与ESP32和ESP8266开发板均兼容。

概述

下图显示了我们将构建的项目的高级概述。

  • ESP要求从BME280传感器获得温湿度读数
  • 温度读数发布在esp / bme280 / temperature主题中
  • 湿度读数发布在esp / bme280 /湿度主题
  • 压读数发布在esp / bme280 / pressure主题中
  • Node-RED订阅这些主题
  • Node-RED接收传感器读数并在仪表上显示
  • 任何支持都可以MQTT在平台上接收读数,并根据需要处理读数

前提

你需要遵循这个教程ESP32或ESP8266板上安装MicroPython还需要一个固件IDE编写代码并上传到板上。我们建议使用它Thonny IDE或uPyCraft IDE:

  • Thonny IDE
    • Thonny IDE安装和入门
    • 使用esptool.py刷新MicroPython固件
  • uPyCraft IDE
    • uPyCraft IDE入门
    • 安装uPyCraft IDE(Windows,Mac OS X,Linux)
    • 将MicroPython闪存/上传到固件ESP32和ESP8266

MQTT代理

要使用MQTT,你需要一个代理。我们将在安装中使用它Raspberry Pi上的Mosquitto代理。

零件需求

MQTT库文件

使用uPyCraft IDE上传MQTT库文件

使用Thonny IDE上传MQTT库文件

BME280 MicroPython库

BME280和ESP32原理图

BME280和ESP8266原理图

源代码

如何工作代码?

连接到MQTT代理

重新启动并重新连接

读取BME280传感器

发布MQTT消息

准备Node-RED仪表板

详情参阅 - 亚图跨际

标签: bme280湿度传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台