使用Arduino IDE的BME680 和 ESP32(气体、压力、温度、湿度)

教程介绍了如何使用Arduino IDE和ESP32与BME680传感器进行交互,该传感器可测量温度、压力、湿度和气体。内容包括传感器介绍、接口、连接方法、在串行监视器和OLED显示屏上显示数据的代码示例。
摘要由CSDN通过智能技术生成

在本教程中,我们将学习使用 Arduino IDE 将 BME680 传感器与 ESP32 连接。BME680环境传感器,用于测量环境温度、气压、相对湿度和气体(VOC)或室内空气质量(IAQ)。我们将学习如何使用 Arduino 核心编程将其与 ESP32 连接。为了进行演示,首先,我们将使用一个简单的 Arduino IDE 代码来读取 BME680 传感器数据并将其显示在 Arduino IDE 的串行监视器上。此外,我们还将看到一个在 OLED 显示屏上显示 BME680 传感器读数的示例。

带有 OLED 和 ESP32 Arduino IDE 的 BME680

先决条件

在开始本课程之前,请确保您熟悉并安装了最新版本的 Arduino IDE。另外,请确保您在 Arduino IDE 中安装了 ESP32 插件。

BME680介绍

BME680是一款四合一电力驱动传感器,集成了温度、压力、湿度和气体检测传感器。它的工作电压为1.8-3.8V,并通过I2C和SPI协议与其他微控制器通信。该传感器用于跟踪空气质量、湿度指示器、天气趋势、家庭自动化、控制和 GPS 增强等领域。

工作范围和精度

BME680 的一些主要 特性包括:

  • 温度测量:测量环境温度,精度为±1.0℃,工作范围为-40至85℃。
  • 相对湿度测量:测量相对湿度,响应速度快,精度为±3%,工作范围为0-100%。
  • 压力测量:以±1 hPa绝对精度测量气压,以±1米精度测量海拔高度。压力操作范围为 300-1100 hPa。
准确性 工作范围
温度 ±1.0℃ -40 至 85 ℃
湿度 ±3% 0-100%
压力 ±1 hPa 300-1100 hPa
  • 气体测量:检测包括挥发性有机化合物 (VOC) 在内的多种气体,从而确定室内空气质量。
  • 由于其紧凑的尺寸和低功耗运行,它适用于移动应用、智能手表和导航系统。

与 BME280 相比,BME680 是一款独特且更新的传感器,因为它包含小尺寸 MOX(金属氧化物)传感器。

气体传感器

BME680传感器可以测定环境中污染物/VOC的数量,例如一氧化碳、乙烷、异戊二烯/2-甲基-1,3丁二烯、丙酮和乙醇。VOC 通过金属氧化物层上吸附的氧分子来检测。它的实际检测是通过改变MOX传感器的阻值原理来完成的。每当 MOX 与空气中的污染物接触时,传感器的电阻就会随着污染物浓度的变化而变化。这意味着空气中污染物数量较多会导致传感器的电阻显着降低。同样,随着空气中 VOC 浓度的降低,传感器的电阻也会明显升高。

BME680气体传感器电阻输出及工作

注意:BME680 气体传感器不是 CO2 或乙醇测量传感器。它从空气中的VOC中得到CO2的相对值,但不能用于直接测量CO2。

与所有其他气体传感器一样,BME680 每次也会给出不同的结果。为了确保更高的准确性,我们必须根据已知源对其进行校准,然后绘制其曲线。由于传感器在初次使用期间灵敏度水平不是恒定的,因此最初建议运行四十八小时,随后可以在每次使用前将其调低至三十分钟。

BME680 模块

市场上有多种不同尺寸和端子数量的 BME680 传感器。​但所有模块都通过SPI但所有模块都通过SPI和​I2C​接口提供数据,​我们可以使用相同的 Arduino 草图来获取传感器读数。其中一些如下所示:

不同的 bme680 传感器模块

可以根据自己的方便以及要连接的微控制器类型来选择模块。在本文中,我们将使用带有 6 个端子的 BME680 传感器,如下所示。它有 4 个 SPI 和两个 I2C 端子。

引脚图

下图显示了BME680传感器的引脚排列:

bme680 引脚排列

BME680 引脚分配

引脚
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值