Usando Termistor Facilmente: Guia Passo a Passo com Arduino
Componentes e Materiais Necessários
| Componente | Quantidade |
|---|---|
| Termistor NTC 10K | 1 |
| Resistor 10k ohm | 1 |
| Arduino UNO | 1 |
| Jumpers (genéricos) | 1 |
| Protoboard (genérica) | 1 |
Aplicativos e Serviços Online
- Arduino IDE
- Arduino Web Editor
Sobre o Projeto
Quão Fácil é Usar um Termistor?
Neste artigo, explicarei como usar um termistor. Primeiro, o que é um termistor? Um termistor é um tipo de resistor cuja resistência depende da temperatura. Existem dois tipos opostos de termistor:
- PTC (Positivo Temperatura Coeficiente), a resistência aumenta conforme a temperatura sobe
- NTC (Negativo Temperatura Coeficiente), a resistência diminui conforme a temperatura sobe
Neste caso, uso o NTC.
Um Pouco de Matemática
Para calcular a resistência do termistor, usa-se uma fórmula simples chamada equação com parâmetro B (apenas para termistor NTC).
Onde:
eé a base do logaritmo naturalR0é a resistência do termistor medida na temperatura T0Bé um coeficiente constante que depende das características do material, é uma constante expressa em K, e seu valor é indicado pelos fabricantes nas fichas técnicas
Para calcular a temperatura, precisamos conhecer a resistência RT usando as leis de Ohm.
Esta é uma versão esquemática do circuito.
RT = VRT / (VR/R)
Agora temos todos os dados para calcular a temperatura.
Lembre-se de converter todos os parâmetros (por exemplo, T0) para Kelvin antes dos cálculos, e o resultado também estará em Kelvin.
Este é o Resultado
Código
Termistor (Arduino)
// Termômetro com termistor
/* parâmetros do termistor:
* RT0: 10 000 Ω
* B: 3977 K +- 0.75%
* T0: 25 C
* +- 5%
*/
// Estes valores estão no datasheet
#define RT0 10000 // Ω
#define B 3977 // K
//--------------------------------------
#define VCC 5 // Tensão de alimentação
#define R 10000 // R=10KΩ
// Variáveis
float RT, VR, ln, TX, T0, VRT;
void setup() {
Serial.begin(9600);
T0 = 25 + 273.15; // Temperatura T0 do datasheet, conversão de Celsius para Kelvin
}
void loop() {
VRT = analogRead(A0); // Aquisição do valor analógico de VRT
VRT = (5.00 / 1023.00) * VRT; // Conversão para tensão
VR = VCC - VRT;
RT = VRT / (VR / R); // Resistência de RT
ln = log(RT / RT0);
TX = (1 / ((ln / B) + (1 / T0))); // Temperatura do termistor
TX = TX - 273.15; // Conversão para Celsius
Serial.print("Temperatura:");
Serial.print("\t");
Serial.print(TX);
Serial.print("C\t\t");
Serial.print(TX + 273.15); // Conversão para Kelvin
Serial.print("K\t\t");
Serial.print((TX * 1.8) + 32); // Conversão para Fahrenheit
Serial.println("F");
delay(500);
}
Esquemáticos
Processo de manufatura
- Como o Molibdênio Molda a Indústria Moderna: Usos, Benefícios e Dinâmica de Fornecimento
- Aproveitando Azure DevOps: Práticas Comprovadas para Entrega Acelerada
- Usando Funções Impuras em VHDL: Melhorando Legibilidade e Manutenibilidade de FSM
- Dominando Funções VHDL: Guia Prático para Design Eficiente
- Usando Procedimentos em VHDL: Simplifique seu Design com Código Reutilizável
- Dominando Loops While em VHDL: Controle Dinâmico de Iteração
- Dominando Loops For em VHDL: Um Guia Prático
- Monitoramento de Qualidade do Ar com OpenSensors: Guia Arduino e Python
- Navegando em Nosso Site: Guia Completo para Adicionar, Comprar e Baixar Arquivos DXF
- Dominando Técnicas de Retificadora de Ferramentas e Cortadores: Guia Prático