Temperatura com termistor
Parte da seção Displays e sensores do Journey de Arduino da Coddy. Lição 20 de 24.
Um termistor é um resistor cuja resistência muda com a temperatura. Neste módulo (do tipo NTC), a tensão do pino OUT cai à medida que ele esquenta: analogRead() retorna cerca de 512 a 25 graus C.
A leitura não cai em linha reta, então map() não serve. A equação beta converte a leitura em graus. BETA vem da folha de dados do componente (3950 aqui), e log() é uma função matemática incorporada à placa. Você não precisa acompanhar a matemática: copie a linha como está.
const float BETA = 3950;
float celsius = 1 / (log(1 / (1023.0 / reading - 1)) / BETA + 1.0 / 298.15) - 273.15;Mantenha o .0 em 1023.0. 1023 / reading usando dois números inteiros descarta a fração, e o resultado fica errado por muitos graus.
Desafio
MédioO módulo do termistor está em A0. Imprima a temperatura:
- converta a leitura em graus C usando a equação beta
- imprima-a com
Serial.println(), duas vezes por segundo
Pressione Run, altere a temperatura na placa e, em seguida, Check.
Experimente você mesmo
const float BETA = 3950; // o valor beta do termistor
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// converta a leitura para graus C e imprima o resultado
delay(500);
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Displays e sensores
Pratique por conta própria: Playground de Arduino