文档
NTC热敏电阻测温模块 — 技术文档
1. 概述
NTC热敏电阻测温模块采用负温度系数 (Negative Temperature Coefficient) 热敏电阻与 10KΩ 分压电阻构成分压电路,温度变化引起 NTC 阻值变化,进而改变 AO 引脚输出电压。模块同时板载 LM393 比较器,通过电位器设定阈值,当温度超过阈值时 DO 引脚输出低电平,实现简易温度开关功能。
核心特点
- 双输出:AO 模拟量(连续测温)+ DO 数字开关量(阈值报警)
- 成本极低,适合批量部署
- 测温范围宽,响应较快
- 板载电源指示灯和 DO 状态指示灯
- 电位器调节触发阈值
2. 引脚定义
| 引脚 | 丝印 | 功能 |
|---|---|---|
| 1 | VCC | 电源正,3.3V ~ 5V |
| 2 | GND | 电源地 |
| 3 | AO | 模拟电压输出 (0 ~ VCC),接 MCU ADC |
| 4 | DO | 数字开关量输出,超阈值 = LOW(TTL) |
DO 输出低电平有效:温度超过设定阈值 → DO 拉低 → 板载 DO LED 点亮。
3. 工作原理
VCC ──┬── 10KΩ (分压电阻) ──┬── AO (MCU ADC读取)
│ │
│ NTC (10KΩ @25°C)
│ │
GND ───────────────── GND
AO = VCC × RNTC / (R_fixed + RNTC)
温度 ↑ → RNTC ↓ → AO 电压 ↓ (NTC负温度系数)
温度 ↓ → RNTC ↑ → AO 电压 ↑
4. 温度计算公式
Steinhart-Hart 简化公式(B参数方程):
R_NTC = R_fixed × AO / (VCC - AO) ... (1)
T_K = 1 / (1/T0 + ln(R_NTC/R0) / B) ... (2)
T_°C = T_K - 273.15
其中:
- R0 = NTC 在 T0 温度下的阻值(通常 10KΩ @ 25°C = 298.15K)
- B = 材料常数(常见 3950 或 3435)
- R_fixed = 模块上的分压电阻(通常 10KΩ)
实用经验公式(B=3950, R0=10K, Rf=10K, VCC=5V):
// 读取 ADC 值 (0~1023, Arduino 10-bit)
float adc = analogRead(A0);
float R_ntc = 10000.0 * (1023.0 / adc - 1.0);
float tempC = 1.0 / (1.0/298.15 + log(R_ntc/10000.0)/3950.0) - 273.15;
5. 电气特性
| 参数 | 规格 |
|---|---|
| 工作电压 | 3.3V ~ 5V |
| NTC 标称阻值 | 10KΩ @ 25°C |
| B 值 (25/85°C) | 3950(常见)/ 3435 |
| 测温范围 | -25°C ~ +125°C |
| 精度 | ±1~2°C(未经校准),±0.5°C(单点校准后) |
| AO 输出范围 | 0 ~ VCC |
| DO 输出 | TTL 电平,超阈值低电平 |
| 分压电阻 | 10KΩ(与 NTC 串联至 VCC) |
6. 典型精度参考 (B=3950, R0=10K, Rf=10K)
| 温度 (°C) | NTC 阻值 (Ω) | AO 电压 (5V) | ADC (10bit) |
|---|---|---|---|
| -20 | 97,000 | 4.53V | 928 |
| 0 | 32,700 | 3.83V | 784 |
| 25 | 10,000 | 2.50V | 512 |
| 50 | 3,600 | 1.32V | 271 |
| 80 | 1,250 | 0.56V | 114 |
| 100 | 680 | 0.32V | 65 |
7. 使用注意事项
- B值确认:不同批次 NTC 的 B 值可能为 3435 或 3950,务必确认。B 值不匹配会导致温度偏差
- ADC参考电压:AO 电压依赖于 VCC,若 VCC 波动则读数不准。推荐使用 MCU 内部基准或稳定 VCC
- 自热效应:NTC 流经电流会产生自热,分压电阻 10KΩ 可将电流限制在 ~0.25mA,自热可忽略
- 多点校准:如需高精度(±0.5°C),建议在 0°C、25°C、50°C 三点校准后拟合
- 防水处理:用于液体测温时需将 NTC 探头做防水密封处理
- DO 阈值调节:使用小螺丝刀旋转电位器,顺时针 = 阈值升高,逆时针 = 阈值降低
- 响应时间:空气中响应慢(~15s),水中快(~3s)。如需快速响应可涂导热硅脂