跳转到内容

转换为 NTC 电阻过滤器

使用 NTC 特性曲线将传感器可用的温度值转换为对应的电阻值。

配置变量:

  • calibration (必需): 校准数据。

使用此过滤器需要电阻/温度特性曲线。这可以从数据手册中的相应图表获取。如果您没有数据手册或想自己计算这些值,必须首先在不同温度下测量三个电阻值。将 NTC 加热或冷却到三个不同的温度(最好是相差较大的温度),并记录这些温度下的电阻值。然后将这些值输入校准参数:

# 示例配置条目
- platform: template
id: to_ntc_resistance_sensor1
unit_of_measurement: "Ohm"
lambda: |-
return id(some_sensor).state;
update_interval: 1s
filters:
- to_ntc_resistance:
calibration:
- 10.0kOhm -> 25°C
- 27.219kOhm -> 0°C
- 14.674kOhm -> 15°C

过滤器从指定的数值对中确定 Steinhart-Hart 方程的系数,也可以直接指定这些系数作为替代方案。

# 示例配置条目
- platform: template
id: to_ntc_resistance_sensor2
unit_of_measurement: "Ohm"
lambda: |-
return id(some_sensor).state;
update_interval: 1s
filters:
- to_ntc_resistance:
calibration:
a: 1.439114856904070E-03
b: 2.693066430764570E-04
c: 1.653440958554570E-07

要将此传感器生成的电阻值发送到输出组件(例如数字电位器或 DAC),可以使用传感器自动化 on_value。这使得替换物理 NTC 并使其变得”智能”成为可能。

输出组件可以接受 0..1 范围内的值(参见 output.set_level Action),因此需要根据模拟 NTC 的实际电阻值进行缩放。

# 示例配置条目
on_value:
then:
- output.set_level:
id: output_id
level: !lambda return x / 100000.0;