NTC 热敏电阻 模拟器 返回
传感器模拟器

NTC 热敏电阻 模拟器 — 阻值-温度特性

用β参数模型实时可视化NTC热敏电阻的阻值-温度特性。通过改变R0、B常数、温度,直观学习阻值、分压电压、灵敏度的行为,确认温度测量电路的工作原理。

参数设置
基准阻值 R0
B 常数
K
温度 T
°C
基准温度 T0
°C

电源电压 Vs = 3.3 V、串联阻值 Rs = R0 的电压分压器输出。

计算结果
阻值 R(T)
输出电压 Vout
灵敏度 dR/dT
R/R0
阻值-温度特性 R(T)

横轴=温度 T(°C)/ 纵轴=阻值 R(kΩ·对数)/ 黄=当前点 (T, R)、蓝=基准点 (T0, R0)

电压分压器电路

3.3 V 电源 → 串联阻值 Rs = R0 → 热敏电阻 R(T) → GND。中点电压为 Vout

理论与主要公式

用β参数模型表示NTC热敏电阻的阻值-温度特性。T 和 T0 为绝对温度(K)。

阻值-温度特性(β参数模型):

$$R(T) = R_0\,\exp\!\left[B\!\left(\frac{1}{T} - \frac{1}{T_0}\right)\right]$$

电压分压器的输出电压(Vs = 3.3 V、串联阻值 Rs = R0):

$$V_\text{out} = V_s \cdot \frac{R(T)}{R(T) + R_s}$$

温度灵敏度(负值:温度上升时阻值下降):

$$\frac{dR}{dT} = -\frac{R(T)\,B}{T^2}$$

B常数一般为3000~4500 K,在25°C附近,温度每变化1°C,阻值变化约为4~5%。

NTC热敏电阻模拟器是什么

🙋
空调的出风口里有个小温度传感器。它是怎样测温的呢?
🎓
那个黑色米粒样的东西就是NTC热敏电阻。它有"温度上升时阻值下降"的特性,用β参数模型可表示为$R(T) = R_0\,\exp[B(1/T - 1/T_0)]$这样的指数函数关系。它是由锰、镍、钴等金属氧化物烧结制成的,微控制器通过读取分压电路的电压,再反算出阻值,进而推断温度。试试在模拟器中拉动温度滑块,你会看到R值呈指数式地剧烈变化。
🙋
B常数,比如3950这个数字代表什么?我在数据表上经常看到。
🎓
B就是这个热敏电阻的"反应灵敏程度",是一个材料固有常数,单位是K(开尔文)。B值越大,温度对阻值的影响越强。在25°C附近,温度每变1°C,阻值大约变4~5%,这比白金测温电阻体(Pt100)的灵敏度高约10倍。在模拟器中把B值改为3000或5000对比,你会明显看出图表的"斜率"不一样,这就是灵敏度差异。
🙋
电路图中的分压器,为什么Rs要用R0相同的值呢?随意选一个不行吗?
🎓
好问题。当Rs = R0时,在基准温度(25°C)处Vout = Vs/2 = 1.65 V,这样ADC能用到中间位置,温度无论向上还是向下摆动,都能准确读取电压变化。如果Rs太小,低温端会饱和;Rs太大,高温端会饱和。试试在模拟器里拉动T滑块,看Vout值在0~3.3 V之间怎么移动。
🙋
那实际的温度测量是微控制器读Vout,然后反推温度吗?
🎓
完全正确。ADC读到Vout后,先用R = Rs · Vout/(Vs − Vout)反算阻值,再用B模型对T求解:$T = 1/(1/T_0 + \ln(R/R_0)/B)$,就得到温度了。嵌入式系统有时用查表法来加速,需要高精度的话就用Steinhart-Hart公式$1/T = A + B\ln R + C(\ln R)^3$,这样可以达到±0.1°C的精度。

物理模型与主要公式

NTC热敏电阻的阻值-温度特性来自半导体中传导电子越过带隙能的激发过程,具有活性化能型温度依赖性。最简洁的模型就是β参数模型,用绝对温度T(K)和基准温度T0处的阻值R0表示:$R(T) = R_0\,\exp[B(1/T - 1/T_0)]$。B常数是材料固有的、对应于活性化能的参数,通常为3000~4500 K。

对温度求微分得到温度灵敏度$\frac{dR}{dT} = -\frac{R\,B}{T^2}$,可以看出低温时(T小)或R较大时灵敏度越高。这正是NTC热敏电阻在室温~100°C温度范围内分辨率高的原因。但在高温区,R指数式下降,绝对灵敏度迅速衰减。

实用电路采用电压分压器,通过$V_\text{out} = V_s\,R(T)/(R(T)+R_s)$的关系,用ADC读出Vout反推温度。选Rs = R0使基准温度处输出为Vs/2,这样能最大化利用ADC动态范围。

实际应用领域

家用电器和温度控制设备:空调、冰箱、热水器、咖啡机等家电中,NTC热敏电阻几乎处处可见。具有成本低、反应快、在−30°C~+150°C范围内精度可靠等特点,已成为白色家电的标准温度传感器。

汽车电子系统:发动机冷却液温度(CTS)、进气温度、车内温度、排气温度等多处采用NTC热敏电阻测量。ECU根据冷却液温度调整燃油喷注量和点火时间,热敏电阻精度直接影响燃效和排放。

锂离子电池温度监测:BMS(电池管理系统)在各电芯附近布置NTC热敏电阻,监测充放电时的温度。过热时停止充电的安全机构核心就是这个传感器,广泛应用于电动车、笔记本、手机电池。

医疗设备:电子体温计、保育器、呼吸机、输液加热器等医疗仪器都用NTC热敏电阻测体温或流体温度。热容量小、响应快(1秒以内),适合迅速精确测量。

常见误区与注意事项

最常见的误区是认为β参数模型在全温度范围都很精准。这个模型在基准温度附近±20°C范围误差在1°C以内就不错了,但到了−40°C或+150°C两端,误差会达到数°C。这是因为B常数本身随温度变化。大温度范围高精度应该用Steinhart-Hart三系数公式,从3个或以上校准数据点拟合A、B、C系数,能达到±0.1°C。

第二个常见错误是把热敏电阻直接接电源。当通过热敏电阻的电流大时会产生自我加热。比如10 kΩ的热敏电阻通1 mA电流,会发热10 mW,在空气中产生约1°C的温升,让测量值产生误差。而Vs = 3.3 V、Rs = 10 kΩ的分压器最大电流只有0.165 mA,发热≤0.5 mW,自热效应可以忽略。

还有一个数据表上的响应时间需要特别注意。厂家标注的响应时间是在特定流体、特定流速、特定封装条件下的值,实际使用条件变了就会差很大。露露形引脚可能是几百毫秒,带套管的要好几秒。流体测量要考虑流速,表面测温要考虑接触压力和热阻。必要时要当成一阶滞后系统来补偿滤波。

常见问题

NTC(负温度系数)随温度上升阻值下降,用于"测量"温度。PTC(正温度系数)随温度上升阻值增加,在居里点附近阻值陡升,用于"过载保护"或"自限制加热器"。两者应用领域完全不同——测温用NTC,保护用PTC。
在两个不同温度T1、T2分别测阻值R1、R2,代入公式$B = \ln(R_1/R_2) / (1/T_1 - 1/T_2)$即可计算。一般用25°C和50°C或25°C和85°C两点,数据表上会标注为B25/50或B25/85。要精度高还是要在多个温度区段分别用不同B值,或采用Steinhart-Hart三参数模型。
先读ADC得到Vout,计算R = Rs · Vout/(Vs − Vout),再代入B模型反解温度:T_K = 1/(1/T0_K + ln(R/R0)/B),然后减去273.15换成℃。Arduino或ESP32可以用查表法加速。需要高精度(±0.1°C)就用Steinhart-Hart公式。
最直接的办法是减小通过热敏电阻的电流。可以用大的分压电阻、脉冲式测量、高阻ADC等方法。一般消耗功率≤0.1 mW就能忽略自热。在水中散热好,在空气中散热差,同样电流在不同媒介的允许值不一样。

使用指南

  1. 用滑块设置R0值(基准温度25°C时的阻值)。常见NTC热敏电阻范围为10kΩ~100kΩ,如10kΩ、47kΩ、100kΩ等
  2. 输入B常数(β值),常见范围3435K~4600K。B值越大温度灵敏度越高
  3. 设置被测温度T[°C]和基准温度T0[°C],运行模拟并将得到的R(T)、Vout、灵敏度dR/dT与数据表规格对比验证

具体计算示例

10kΩ、B值3950K、基准温度25°C的热敏电阻,被测温度设为50°C时:根据Steinhart-Hart表,R(T)≈6.2kΩ、分压电压(5V电源、10kΩ串联阻值)Vout≈2.36V、灵敏度dR/dT≈−120Ω/°C、相对阻值R/R0≈0.62。温度测量精度可设为±0.5°C

工程应用注意