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。
# Example configuration entrysensor: - platform: mhz19 co2: name: MH-Z19 CO2 Value temperature: name: MH-Z19 Temperature-
co2 (可选): 传感器以百万分率(ppm)为单位的 CO_2 数据。 来自 Sensor 的所有选项。
-
temperature (可选): 温度传感器的信息。请注意,这 在数据手册中并未正式记录,且似乎相当不准确。 来自 Sensor 的所有选项。
-
update_interval (可选,Time): 检查 传感器的间隔。默认为
60s。 -
id (可选,ID): 手动指定用于操作的 ID。
-
automatic_baseline_calibration (可选,boolean): MH-Z19 具有自动校准程序。 自动校准周期为上电后每 24 小时一次。 将此值设置为
false可在启动时禁用 ABC(如果您在室内使用传感器,效果更好)。 将此值设置为true可在启动时启用 ABC。 如果未设置,则不发送校准命令(将使用默认的传感器逻辑)。 -
warmup_time (可选,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