跳转到内容

ENS160 挥发性有机化合物 (VOC) 和 eCO₂ 传感器

ens160 传感器平台允许您将 ENS160 (数据手册) 空气质量传感器与 ESPHome 配合使用。 配置中必须设置 I²C 或 SPI 才能使此传感器工作。

NOTE

ENS160 传感器首次上电时,有 1 小时的初始启动延迟,之后才能读取数据。 随后的启动或重启有 3 分钟的预热期,之后才能读取数据。此外,请注意 ENS160 连续数据测量最多需要 1 秒才能就绪。

ENS160 空气质量传感器。
# I2C 示例配置条目
sensor:
- platform: ens160_i2c
eco2:
name: "ENS160 eCO2"
tvoc:
name: "ENS160 总挥发性有机化合物"
aqi:
id: ens160_air_quality_index
name: "ENS160 空气质量指数"
compensation:
temperature: id_temperature_sensor
humidity: id_humidity_sensor
# SPI 示例配置条目
sensor:
- platform: ens160_spi
eco2:
name: "ENS160 eCO2"
tvoc:
name: "ENS160 总挥发性有机化合物"
aqi:
name: "ENS160 空气质量指数"
cs_pin: GPIOXX
compensation:
temperature: id_temperature_sensor
humidity: id_humidity_sensor
  • eco2 (可选): eCO2 传感器的配置。

    • 来自 Sensor 的所有选项。
  • tvoc (可选): TVOC 传感器的配置。

    • 来自 Sensor 的所有选项。
  • aqi (可选): 空气质量指数传感器的配置。

    • 来自 Sensor 的所有选项。
  • update_interval (可选, Time): 检查传感器的时间间隔。默认为 60s。更新间隔应大于 ENS160 的测量 频率(最多 1 秒)。

  • address (可选, int): 仅 I²C。 手动指定传感器的 I²C 地址。 默认为 0x52。另一个地址可为 0x53。

  • cs_pin (必选, Pin Schema): 仅 SPI。 片选引脚。

高级:

  • compensation (可选): 包含用于补偿的传感器的代码块。 温度和湿度补偿可提高传感器读数的精度。如果没有补偿, ENS160 内部假设为 25°C 温度和 50% 湿度,没有补偿时读数在温度和湿度变化时会明显偏离真实变化。

    • temperature (必选, ID): 外部温度传感器的 ID。
    • humidity (必选, ID): 外部湿度传感器的 ID。

此传感器的空气质量指数 (AQI) 是 1 到 5 之间的数字。ENS160 (数据手册) 指出 “AQI-UBA 空气质量指数源自德国联邦环境署的指南,基于 TVOC 总信号”。以下是将 ENS160 AQI 数字转换为评级文本的示例配置。

text_sensor:
- platform: template
name: "ENS160 空气质量评级"
lambda: |-
switch ( (int) (id(ens160_air_quality_index).get_state()) ) {
case 1: return {"Excellent"};
case 2: return {"Good"};
case 3: return {"Moderate"};
case 4: return {"Poor"};
case 5: return {"Unhealthy"};
default: return {"Not Available"};
}