A equação Beta
A resistência de um termistor NTC cai à medida que ele esquenta, de forma aproximadamente exponencial. Os datasheets informam a resistência a 25 °C (R25) e um valor B, que juntos descrevem a curva:
R(T) = R25 × e^(B × (1/T − 1/298,15)) T = 1 ÷ (1/298,15 + ln(R ÷ R25) ÷ B) − 273,15 (T em kelvin: °C + 273,15)
Exemplo: um termistor de 10 kΩ B3950 a 50 °C. 1/323,15 − 1/298,15 = −0,00025948; × 3950 = −1,0249; e^−1,0249 = 0,3588; R = 10 kΩ × 0,3588 ≈ 3,59 kΩ.
B25/50 ou B25/85?
O B é calculado a partir da resistência em duas temperaturas, e o datasheet diz quais: B25/50 usa 25 e 50 °C, B25/85 usa 25 e 85 °C. Para o mesmo componente, os dois valores são um pouco diferentes: o NCP18XH103F03RB da Murata tem 3380 K como B25/50 e 3434 K como B25/85. Use aquele cuja segunda temperatura está mais perto das temperaturas em que você mede.
Como escolher o resistor fixo
Em um divisor, a tensão muda mais rápido com a temperatura quando o resistor fixo é igual à resistência do termistor nessa temperatura. Então escolha a resistência no meio da faixa que interessa a você: 10 kΩ para um termistor de 10 k perto da temperatura ambiente, cerca de 3,6 kΩ para 0–100 °C (3,59 kΩ a 50 °C). Quanto mais longe do meio, mais graus cada passo do ADC cobre.
O lado em que o termistor fica só inverte a curva: com o termistor no GND, a tensão cai quando ele esquenta; com o termistor na alimentação, ela sobe.
Resistência de um termistor de 10 kΩ B3950
| Temperatura | Resistência | α |
|---|---|---|
| -20 °C | 105 kΩ | -6,16%/°C |
| -10 °C | 58,2 kΩ | -5,7%/°C |
| 0 °C | 33,6 kΩ | -5,29%/°C |
| 10 °C | 20,2 kΩ | -4,93%/°C |
| 20 °C | 12,5 kΩ | -4,6%/°C |
| 30 °C | 8,04 kΩ | -4,3%/°C |
| 40 °C | 5,3 kΩ | -4,03%/°C |
| 50 °C | 3,59 kΩ | -3,78%/°C |
| 60 °C | 2,49 kΩ | -3,56%/°C |
| 70 °C | 1,76 kΩ | -3,35%/°C |
| 80 °C | 1,27 kΩ | -3,17%/°C |
| 90 °C | 934 Ω | -3%/°C |
| 100 °C | 698 Ω | -2,84%/°C |
| 110 °C | 529 Ω | -2,69%/°C |
| 120 °C | 407 Ω | -2,56%/°C |
Calculada com a equação Beta, R25 = 10 kΩ, B = 3950 K. α é a variação da resistência por grau. Componentes reais seguem a tabela do próprio datasheet, principalmente longe de 25 °C.
Precisão
Três coisas costumam definir o erro. A tolerância do termistor: ±1% no R25 equivale a cerca de ±0,26 °C perto da temperatura ambiente para um componente com B 3380, porque ali a resistência dele muda cerca de 3,8% por grau. O modelo: a equação Beta é exata nas suas duas temperaturas de referência e se afasta da curva fora delas; em uma faixa ampla, use a equação de Steinhart–Hart com três pontos de calibração. E o autoaquecimento: a corrente do divisor aquece o termistor, então mantenha essa corrente baixa ou alimente o divisor só durante a medição.
Perguntas frequentes
O que significa B3950 em um termistor?
É o valor B, 3950 K: o quanto a resistência cai com a temperatura. Junto com a resistência a 25 °C (10 kΩ em um “10k B3950”), ele define a curva que a calculadora usa. O datasheet informa entre quais duas temperaturas ele foi medido, por exemplo 25/50 °C.
10 kΩ ou 100 kΩ?
Escolha aquele cuja resistência fica numa faixa que o seu divisor consegue ler nas suas temperaturas. 10 kΩ serve para temperatura ambiente, água e geladeira. A 250 °C, um 10 kΩ B3950 cai para cerca de 34 Ω; por isso os hotends de impressoras 3D usam termistores de 100 kΩ como o Semitec 104GT-2, que pela equação Beta ainda tem cerca de 500 Ω a 200 °C.
Qual resistor fixo devo usar?
A resistência do termistor no meio da sua faixa de temperatura: assim o divisor fica mais sensível onde você mede. A calculadora encontra esse valor a partir da faixa que você informa e o arredonda para um valor comercial.
NTC, PTC ou DS18B20?
Um NTC é barato, pequeno e rápido, mas precisa de um divisor, um ADC e a fórmula. Em um termistor PTC a resistência sobe com a temperatura, muitas vezes de forma brusca em um ponto, por isso os PTCs servem mais como fusíveis rearmáveis e chaves de sobretemperatura do que para medir. O DS18B20 é um sensor digital: dispensa calibração e tem precisão de ±0,5 °C de −10 a +85 °C segundo o datasheet, mas é mais lento e limitado a −55…+125 °C.
Por que minhas leituras erram alguns graus?
Confira, nesta ordem: se R25 e B correspondem ao seu componente; o valor real do resistor fixo; se o código considera a mesma ligação (termistor no GND ou na alimentação); se a referência do ADC é a que o código espera; e o próprio ADC. O ADC do ESP32 não é linear perto de 0 V nem no topo da faixa, então mantenha a tensão do divisor na parte central ou use leituras calibradas.
Como ligar um termistor a um ESP32 ou Arduino?
Um terminal do termistor no GND, o outro em um pino analógico e, através do resistor fixo, em 3,3 V (5 V em um Arduino de 5 V). Adicione um capacitor de 100 nF do pino para o GND. No ESP32, use um pino do ADC1, como o GPIO34: o ADC2 não pode ser usado com o Wi-Fi ligado.