Temperatura del termistore
Fa parte della sezione Display e sensori del percorso Arduino di Coddy. Lezione 20 di 24.
Un termistore è una resistenza che varia con la temperatura. Su questo modulo (di tipo NTC), la tensione del pin OUT diminuisce quando si riscalda: analogRead() restituisce circa 512 a 25 gradi C.
La lettura non diminuisce in linea retta, quindi map() non va bene. L'equazione beta la converte in gradi. BETA è indicato nella scheda tecnica del componente (qui 3950) e log() è una funzione matematica integrata nella scheda. Non è necessario seguire i calcoli: copia la riga così com'è.
const float BETA = 3950;
float celsius = 1 / (log(1 / (1023.0 / reading - 1)) / BETA + 1.0 / 298.15) - 273.15;Mantieni lo .0 in 1023.0. 1023 / reading con due numeri interi elimina la parte frazionaria e il risultato è sbagliato di parecchi gradi.
Sfida
MedioIl modulo termistore è su A0. Stampa la temperatura:
- converti la lettura in gradi C con l’equazione beta
- stampala con
Serial.println(), due volte al secondo
Premi Run, cambia la temperatura sulla scheda, poi premi Check.
Provalo tu
const float BETA = 3950; // il valore beta del termistore
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// converti la lettura in gradi C e stampala
delay(500);
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Display e sensori
Esercitati da solo: Playground Arduino