MH-Z19 CO_2 和温度传感器
mhz19 传感器平台允许您在 ESPHome 中使用 MH-Z19 CO_2 和温度传感器
(Revspace)。
CO_2 测量也适用于 MH-Z16 和 MH-Z14 传感器。
由于与 MH-Z19 的通信使用 UART,您需要在配置中有一个 UART 总线,并将 rx_pin 连接到 MH-Z19 的 TX 引脚,将 tx_pin 连接到 MH-Z19 的 RX 引脚(这是交换的,因为 TX/RX 标签是从 MH-Z19 的角度标记的)。此外,您需要将波特率设置为 9600。
# 示例配置条目sensor: - platform: mhz19 co2: name: MH-Z19 CO2 Value temperature: name: MH-Z19 Temperature-
co2 (可选): 来自传感器的 CO_2 数据,以百万分率 (ppm) 为单位。 所有选项来自 传感器。
-
temperature (可选): 温度传感器的信息。请注意,这 在数据手册中没有正式记录,似乎相当不准确。 所有选项来自 传感器。
-
update_interval (可选, 时间): 检查传感器的时间间隔。默认为
60s。 -
id (可选, ID): 手动指定用于操作的 ID。
-
automatic_baseline_calibration (可选, 布尔值): MH-Z19 具有自动校准程序。 自动校准周期为上电后每 24 小时一次。 将此值设置为
false以在启动时禁用 ABC(如果您在室内使用传感器,这样更好)。 将此值设置为true以在启动时启用 ABC。 如果未设置,则不发送校准命令(将使用默认传感器逻辑)。 -
warmup_time (可选, 时间): 传感器有一个预热时间,在此之前它会返回虚假读数(例如:500ppm、505ppm…)。此设置会丢弃预热时间之前的读数(返回
NAN)。数据手册说预热需要 1 分钟,但实验测试表明通常需要更长时间,因此默认的 75s 应该足以适应这种情况。 -
detection_range (可选): CO_2 传感器可配置为检测不同范围:0-2000ppm、0-5000ppm 或 0-10000ppm。有效值为
2000ppm、5000ppm或10000ppm。传感器出厂时预配置了这些范围之一,此设置保存在传感器的非易失性存储器中。如果未指定,则使用先前配置的范围。
mhz19.calibrate_zero 操作
Section titled “mhz19.calibrate_zero 操作”此操作在具有给定 ID 的传感器上执行零点校准命令。
如果要执行零点校准,MH-Z19 传感器必须在稳定的气体环境(400ppm)中工作超过 20 分钟,然后执行此功能。
on_...: then: - mhz19.calibrate_zero: my_mhz19_id您可以提供一个操作从 Home Assistant 执行
api: actions: - action: mhz19_calibrate_zero then: - mhz19.calibrate_zero: my_mhz19_idmhz19.abc_enable 操作
Section titled “mhz19.abc_enable 操作”此操作在具有给定 ID 的传感器上启用自动基线校准。
on_...: then: - mhz19.abc_enable: my_mhz19_idmhz19.abc_disable 操作
Section titled “mhz19.abc_disable 操作”此操作在具有给定 ID 的传感器上禁用自动基线校准。
on_...: then: - mhz19.abc_disable: my_mhz19_id您可以提供一个开关并从 Home Assistant 控制 ABC
switch: - platform: template name: "MH-Z19 ABC" optimistic: true on_turn_on: mhz19.abc_enable: my_mhz19_id on_turn_off: mhz19.abc_disable: my_mhz19_idmhz19.detection_range_set 操作
Section titled “mhz19.detection_range_set 操作”此操作配置具有给定 ID 的传感器的检测范围。
on_...: then: - mhz19.detection_range_set: id: my_mhz19_id detection_range: 5000ppm