Grove - 温度湿度压力气体传感器(BME680)

Grove-温度&湿度&压力&气体传感器(BME680)是一款多功能传感器,可以同时测量温度、压力、湿度和气体。它基于BME680模块,您可以将此传感器用于GPS、物联网设备或其他需要这四个参数的设备。
“气体”指的是空气质量,主要受VOCs(挥发性有机化合物)气体的影响。截至2018年8月8日,此模块不支持某些Arduino板的气体测量功能。它仅适用于具有大内存的Arduino平台,例如ATMEGA2560。如果您使用其他Arduino平台,例如:Arduino Uno、Seeeduino v4.2... 您获得的气体值将不准确。
可升级为工业传感器
通过SenseCAP S2110控制器和S2100数据记录仪,您可以轻松将Grove升级为LoRaWAN®传感器。Seeed不仅帮助您进行原型设计,还为您提供通过SenseCAP系列的坚固工业传感器扩展项目的可能性。
SenseCAP S210x系列工业传感器为环境传感提供开箱即用的体验。请参考性能更高、可靠性更强的S2101无线温湿度传感器,用于空气质量监测。该系列包括用于土壤湿度、空气温度和湿度、光强度、二氧化碳、EC以及8合1气象站的传感器。尝试最新的SenseCAP S210x,为您的下一个工业项目取得成功。
SenseCAP工业传感器 |
S2101 空气温湿度传感器 |
特性
-
四合一多功能测量
-
低功耗
-
宽测量范围
-
可选输出:
湿度、压力和气体传感器可独立启用/禁用
规格
项目 | 值 |
---|---|
工作电压 | 3.3V/5V |
工作范围 | -40~+85℃; 0-100% r.H.; 300-1100hPa |
数字接口 | I2C(最高3.4MHz)/ SPI(3线和4线,最高10MHz) |
I2C地址 | 0x76(默认)/ 0x77(可选) |
硬件概览
引脚图


如果您想更改默认设置,可能需要自行切割焊盘并焊接,请参考上图,并在使用刀具或焊接工具时务必小心。
支持的平台
Arduino | Raspberry Pi | ESP-IDF |
---|---|---|
上述支持的平台仅表示模块的软件或理论兼容性。我们通常仅为 Arduino 平台提供软件库或代码示例。不可能为所有可能的 MCU 平台提供软件库或演示代码,因此用户需要自行编写软件库。
入门指南
使用 Arduino
硬件
所需材料
Seeeduino V4.2 | Base Shield | Grove-BME680 |
---|---|---|
![]() | ![]() | ![]() |
立即购买 | 立即购买 | 立即购买 |
-
步骤 1. 将 Grove-温湿度&压力&气体传感器(BME680) 连接到 Grove-Base Shield 的 I2C 端口。
-
步骤 2. 将 Grove-Base Shield 插入 Seeeduino。
-
步骤 3. 使用 USB 数据线将 Seeeduino 连接到 PC。

如果没有 Grove Base Shield,我们也可以直接将此模块连接到 Seeeduino,如下所示。
Seeeduino | Grove-BME680 |
---|---|
5V | 红色 |
GND | 黑色 |
SDA | 白色 |
SCL | 黄色 |
软件
如果这是您第一次使用 Arduino,我们强烈建议您在开始之前查看 Arduino 入门指南。
-
步骤 1. 从 Github 下载 Grove BME680 库。
-
步骤 2. 参考 如何安装库 为 Arduino 安装库。
-
步骤 3. 重启 Arduino IDE。通过路径 File --> Examples --> Seeed BME680 --> seeed_bme680_test 打开 “BME680” 示例。

-
步骤 4. 上传示例代码。如果您不知道如何上传代码,请查看 如何上传代码。
-
步骤 5. 点击 工具->串口监视器 或同时按下 ++ctrl+shift+m++ 键,打开 Arduino IDE 的 串口监视器。如果一切正常,您将看到如下结果:
结果应如下所示:
Serial start!!!
temperature ===>> 27.14 C
pressure ===>> 94.51 KPa
humidity ===>> 65.76 %
gas ===>> 101.51 Kohms
temperature ===>> 27.15 C
pressure ===>> 94.51 KPa
humidity ===>> 65.76 %
gas ===>> 101.64 Kohms
temperature ===>> 27.14 C
pressure ===>> 94.51 KPa
humidity ===>> 65.77 %
gas ===>> 101.64 Kohms
temperature ===>> 27.15 C
pressure ===>> 94.51 KPa
humidity ===>> 65.80 %
gas ===>> 101.76 Kohms
1 - 为了获得稳定和准确的值,您需要让 Arduino 运行代码约 2 小时。结果会更加可靠。
2 - 对于气体部分,它是一个可变电阻,反映了 VOC 气体的值,因此单位是 Kohms。
3 - 如果您希望获得气体部分的可靠结果,请使用 Arduino Mega 并查看 这里
使用 ESP-IDF
硬件
所需材料
Seeed Studio XIAO ESP32C3 | Seeed Studio Grove Base for XIAO | Grove BME680 环境传感器 |
---|---|---|
![]() | ![]() | ![]() |
- 步骤 1. 使用 Grove 数据线将 Grove-温湿度&气压&气体传感器 (BME680) 连接到 XIAO 的 Grove Base。
- 步骤 2. 使用 USB 数据线将 XIAO ESP32C3 连接到电脑。
软件
如果这是您第一次使用 ESP-IDF,我们强烈建议您在开始之前查看 ESP-IDF 入门指南。
-
步骤 1. 按照 官方指南 安装 ESP-IDF。
-
步骤 2. 使用 ESP-IDF 模板创建一个新项目。
-
步骤 3. 克隆 BME680 组件仓库:
cd <your_project>/components
git clone --recursive https://github.com/Priyanshu0901/grove_bme680.git
- 步骤 4. 在项目的
sdkconfig
文件中或通过 menuconfig 配置 I2C 引脚:
idf.py menuconfig
导航到 Component config -> BME680 Sensor Configuration
并设置:
-
I2C SDA 引脚:6
-
I2C SCL 引脚:7
-
步骤 5. 将组件的
examples
目录中的示例代码复制到项目的main
目录。 -
步骤 6. 构建并烧录项目:
idf.py build
idf.py -p /dev/ttyUSB0 flash monitor
输出应类似于以下内容:
I (251) main_task: Started on CPU0
I (251) main_task: Calling app_main()
I (251) BME680_EXAMPLE: BME680 sensor example started
I (261) BME680_EXAMPLE: Initializing BME680 sensor...
I (261) BME680_IF: I2C interface initialized with address: 0x76
I (271) BME680_IF: BME680 interface initialized successfully
I (281) BME680: BME680 configured successfully
I (281) BME680: BME680 initialized successfully
I (281) BME680_EXAMPLE: BME680 initialized, waiting for sensor to stabilize...
I (1291) BME680_EXAMPLE: Performing first sensor reading...
I (1411) BME680_EXAMPLE: First sensor reading successful on attempt 1
I (1411) BME680_EXAMPLE: Sensor Data:
I (1411) BME680_EXAMPLE: Temperature: 30.46 °C
I (1411) BME680_EXAMPLE: Pressure: 910.34 hPa
I (1411) BME680_EXAMPLE: Humidity: 51.17 %
I (1421) BME680_EXAMPLE: Gas Resistance: 12561.98 kOhm
I (1421) BME680_EXAMPLE: Gas Valid: Yes
I (1431) BME680_EXAMPLE: Data Valid: Yes
I (1561) BME680_EXAMPLE: Sensor Data:
I (1561) BME680_EXAMPLE: Temperature: 30.50 °C
I (1561) BME680_EXAMPLE: Pressure: 910.33 hPa
I (1561) BME680_EXAMPLE: Humidity: 51.20 %
I (1561) BME680_EXAMPLE: Gas Resistance: 136.83 kOhm
I (1571) BME680_EXAMPLE: Gas Valid: Yes
I (1571) BME680_EXAMPLE: Data Valid: Yes
I (3691) BME680_EXAMPLE: Sensor Data:
I (3691) BME680_EXAMPLE: Temperature: 30.50 °C
I (3691) BME680_EXAMPLE: Pressure: 910.33 hPa
I (3691) BME680_EXAMPLE: Humidity: 51.04 %
I (3691) BME680_EXAMPLE: Gas Resistance: 96.77 kOhm
I (3701) BME680_EXAMPLE: Gas Valid: Yes
I (3701) BME680_EXAMPLE: Data Valid: Yes
- 示例代码包含错误处理和传感器读取失败的恢复机制。
- 传感器在初始化后需要一些时间稳定,因此前几次读取可能不准确。
- 气体电阻值以 kOhm 为单位,表示空气质量。
- 传感器支持 I2C 和 SPI 接口,但示例默认使用 I2C。
- 使用 XIAO ESP32C3 时,请确保使用正确的 I2C 引脚(GPIO6 用于 SDA,GPIO7 用于 SCL)。
原理图在线查看器
资源
- [Zip] Grove-BME680 Eagle 文件
- [Library] Seeed BME680 库
- [PDF] BME680 数据手册
项目
这是该产品的介绍视频,包含简单的演示,您可以尝试一下。
技术支持与产品讨论
感谢您选择我们的产品!我们致力于为您提供多种支持,以确保您使用我们的产品时体验顺畅。我们提供多个沟通渠道,以满足不同的偏好和需求。