跳转到内容

NTC 传感器

ntc 平台是一个辅助传感器,允许您将 NTC 热敏电阻的电阻读数转换为温度读数。

首先,您需要从传感器获取电阻读数 - 您可以使用 resistanceadc 传感器进行设置。

然后此平台将电阻值转换为温度读数。它还需要校准参数来进行此转换。有两种方法可以获得这些值:查看数据手册或手动计算。

如果您有热敏电阻的数据手册,可以查看其”B 常数”和参考温度/电阻。例如 此产品 将具有以下校准配置。

# 示例配置条目
sensor:
- platform: ntc
# ...
calibration:
b_constant: 3950
reference_temperature: 25°C
reference_resistance: 10kOhm

如果您无法获取数据手册或想自己计算这些值,您必须首先在不同温度下测量三个电阻值。 将 NTC 加热/冷却到三个不同的温度(最好温度相距较远),并记下这些温度下的电阻读数。然后在校准参数中输入这些值:

# 示例配置条目
sensor:
- platform: ntc
# ...
calibration:
- 10.0kOhm -> 25°C
- 27.219kOhm -> 0°C
- 14.674kOhm -> 15°C
# 示例配置条目
sensor:
- platform: ntc
sensor: resistance_sensor
calibration:
b_constant: 3950
reference_temperature: 25°C
reference_resistance: 10kOhm
name: NTC 温度
# 示例源传感器:
- platform: resistance
id: resistance_sensor
sensor: source_sensor
configuration: DOWNSTREAM
resistor: 5.6kOhm
name: 电阻传感器
- platform: adc
id: source_sensor
pin: A0
  • sensor (必需, ID): 从中读取电阻值以转换为温度读数的传感器。

  • calibration (必需, 浮点数): 传感器的校准参数 - 有关更多详细信息,请参见上文。

  • 传感器的所有其他选项。

向 NTC 传感器持续供电会导致其发热,从而产生不可靠的温度值。 因此建议仅在实际测量期间向 NTC 传感器(和分压器)供电。更多信息请参阅 Adafruit

为此,将分压器的 3.3V 端替换为连接到 GPIO 引脚。此 GPIO 引脚仅在测量期间切换为高电平 (3.3V),从而防止传感器发热。 在下面的示例中,引脚 D0 是分压器的”顶部”端:

sensor:
# 与之前相同:
- platform: ntc
sensor: resistance_sensor
# ...
- platform: adc
pin: A0
id: source_sensor
# 添加:
update_interval: never
switch:
- platform: gpio
pin: D0
id: ntc_vcc
interval:
- interval: 60s
then:
- switch.turn_on: ntc_vcc
- component.update: source_sensor
- switch.turn_off: ntc_vcc