CFSensor XGZP68xx 非 C 系列差压传感器
CFSensor 生产的多代传感器具有相同的型号(如 6899D 或 6897D),但不幸的是它们的 I²C 接口完全不同。您可以通过零件编号来识别:
- XGZP6897Dxxxxxxxx 为非 C 系列,本组件支持。
- XGZP6897DCxxxxxxxx 为 C 系列,本组件不支持。
另一种区别方法是通过 I²C 地址:
- 如果是非 C 系列设备,I²C 地址为
0x6d。 - 如果是 C 系列设备,I²C 地址为
0x58。
遗憾的是,CFSensor 已从网站上删除了非 C 系列传感器的数据手册。您需要从其他来源专门查找旧版数据手册。 CFSensor 的 v3.1 或更高版本的数据手册描述的是 C 系列,这是一个完全不同的设备,尽管其型号与 ≤ v3.0 的设备相同。

要使用传感器,请设置一个 I²C 总线 并将传感器连接到指定的引脚。
# 示例配置条目# 使用 filter offset 来校准传感器sensor: - platform: xgzp68xx k_value: 16384 temperature: name: "Temperature" pressure: name: "Differential Pressure" oversampling: "32768x" filters: - offset: 40.5- temperature (可选): Sensor 的所有选项。
- pressure (可选): Sensor 的所有选项。
- oversampling (可选): 可选值为
256x、512x、1024x、2048x、4096x、8192x、16384x、32768x。无法禁用过采样。如果未指定,默认为4096x。
- oversampling (可选): 可选值为
- k_value (可选, int): K 值取自下表。如果未指定,默认为 4096。
- update_interval (可选, Time): 检查传感器的间隔。默认为
60s。
传感器提供一系列压力量程。现在较难找到的数据手册中列出了压力量程到 k_value 的对应表,您需要在配置中设置:
- -0.5 kPa 至 +0.5 kPa(
k_value = 16384) - -1 kPa 至 +1 kPa(
k_value = 8192) - -2.5 kPa 至 +2.5 kPa(
k_value = 2048) - -5 kPa 至 +5 kPa(
k_value = 1024) - -10 kPa 至 +10 kPa(
k_value = 512) - -50 kPa 至 +50 kPa(
k_value = 128)
上电时,传感器会读取一个偏移值。您需要校准传感器,这可以通过检查端口对空气开放时返回的数值来完成。您可以使用 offset 选项来修正读数。例如,如果传感器在端口断开时读数为 -40Pa,可以将 offset 设置为 40。
如果传感器运行一段时间,您会发现零点会逐渐漂移,尤其是在用于检测压力冲击的情况下。设计一种定期在端口间均衡压力的方法以重新确定新的偏移值,将会是一种明智的做法。