NTC 传感器
ntc 平台是一个辅助传感器,允许您将来自
NTC 热敏电阻的电阻读数
转换为温度读数。
首先,您需要从传感器获取电阻读数——您可以通过 resistance 和 adc 传感器设置这些。
此平台随后将电阻值转换为温度读数。 它还需要用于此转换的校准参数。有 两种获取这些值的方法:查看数据手册或手动计算。
如果您有热敏电阻的数据手册,可以查看其“B 常数”和 参考温度/电阻。例如 此产品 将具有以下校准配置。
# Example configuration entrysensor: - platform: ntc # ... calibration: b_constant: 3950 reference_temperature: 25°C reference_resistance: 10kOhm如果您无法获取数据手册或想自己计算这些值, 您需要首先测量三个不同温度下的电阻值。 将 NTC 加热/冷却到三个不同温度(最好是温度相距较远) 并记录这些温度下的电阻读数。然后将这些值输入到 校准参数中:
# Example configuration entrysensor: - platform: ntc # ... calibration: - 10.0kOhm -> 25°C - 27.219kOhm -> 0°C - 14.674kOhm -> 15°C# Example configuration entrysensor: - platform: ntc sensor: resistance_sensor calibration: b_constant: 3950 reference_temperature: 25°C reference_resistance: 10kOhm name: NTC Temperature
# Example source sensors: - platform: resistance id: resistance_sensor sensor: source_sensor configuration: DOWNSTREAM resistor: 5.6kOhm name: Resistance Sensor - platform: adc id: source_sensor pin: A0向 NTC 传感器提供恒压电源会导致其发热,从而产生不可靠的温度值。 因此,建议仅在 实际测量期间为 NTC 传感器(和分压器)供电。 更多信息参见 Adafruit。
为此,将分压器的 3.3V 侧替换为连接
到 GPIO 引脚。此 GPIO 引脚将
仅在测量期间切换为 HIGH(3.3V),从而防止传感器发热。
在下面的示例中,引脚 D0 是分压器的“上”侧:
sensor: # Same as before: - platform: ntc sensor: resistance_sensor # ...
- platform: adc pin: A0 id: source_sensor # Added: 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