Menu
CoddyTech

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.

challenge icon

Sfida

Medio

Il 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);
}
quiz iconMettiti alla prova

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