CONTENUTO ►
Il sensore di temperatura LM35 può essere utilizzato in molti progetti semplici, come una stazione meteorologica su Arduino. In questa lezione consideriamo un semplice sensore di temperatura analogico LM35: come funziona l’elemento radio, lo schema di collegamento ad Arduino Uno. Consideriamo un semplice sketch per un sensore di temperatura che fornirà le letture della temperatura a un monitor del computer o a un display LCD 1602.
Per questa attività sono necessari:
- Arduino Uno / Arduino Nano / Arduino Mega
- sensore di temperatura LM35
- LED e resistenza
- breadboard
- cavi di collegamento
Sensore di temperatura LM35 datasheet, pinout
Al posto dell’lm35 è possibile utilizzare qualsiasi altro sensore di temperatura analogico, ad esempio TMP35, LM35, TMP37, LM335. Il sensore ha l’aspetto di un transistor e quindi è facile confonderlo, quindi leggete sempre con attenzione le marcature sugli elementi radio. Spesso sulla base di questo sensore i produttori realizzano moduli di temperatura per Arduino (vedi foto sopra). Se si dispone solo del sensore lm35, questo ha tre pin.
Caratteristiche del sensore di temperatura LM35 Arduino:
- Tensione di alimentazione: 4 – 30 V
- Corrente di funzionamento: 60µA
- Intervallo di temperatura: da -55°C a + 155°C
- Accuratezza garantita: ±0,5°C a +25°C e ±1°C da -55°C a +150°C
- Fattore di scala dell’uscita: 10 mV/°C
- Tensione di uscita a 25°C: 250 mV
L’accuratezza garantita dal produttore è di +/-1°C a 25°C e +/-1,5°C a -55°C o +150°C per la versione meno precisa, più che sufficiente per la maggior parte delle applicazioni e dei progetti. Un altro vantaggio del sensore LM35 è la sua esemplare linearità: un errore inferiore a 1°C sull’intera gamma da -55°C a +150°C. Poiché ogni grado Celsius corrisponde a 10 mV (cioè 0,01 volt), il segnale di uscita del sensore è quasi perfettamente lineare.
Come collegare sensore di temperatura LM35 Arduino
Questo sensore è analogico, quindi l’uscita del modulo non è 0 (LOW) o 1 (HIGH), ma una variazione continua di tensione nell’intervallo tra 0 e 5 volt. Pertanto, dobbiamo collegare il sensore lm35 al microcontrollore Arduino alle porte analogiche A0-A5 utilizzando il circuito mostrato sopra. Dopo aver assemblato il circuito, caricare il software per rilevare i valori dai sensori analogici e inviare i dati alla porta seriale hardware di Arduino IDE.
Programma Arduino per utilizzare sensore di temperatura LM35
int temp; float grad; void setup() { pinMode(A1, INPUT); Serial.begin(9600); } void loop() { temp = analogRead(A1); grad = (temp / 1023.0) * 5.0 * 1000 / 10; Serial.println(grad); delay(1000); }
Spiegazione del codice per sensore di temperatura LM35 Arduino:
- float – numero in virgola mobile utilizzato per i valori analogici;
- nella formula grad = (temp/1023,0)*5,0*1000/10; è possibile modificare i valori delle cifre per calibrare il sensore di temperatura.
Come collegare del sensore di temperatura LM35 e LED
La calibrazione del sensore analogico è necessaria per ottenere una lettura del sensore di temperatura lm35 in gradi Celsius, come avviene per il sensore DHT11. A tale scopo, aggiungere un’altra variabile allo sketch e inserire una formula che converta i dati del sensore in gradi Celsius. Per calibrare il modulo analogico lm35, caricare il programma sulla scheda Arduino e modificare la formula nel programma, se necessario.
Programma Arduino per calibrazione dei sensori LM35
int temp; float grad; void setup() { pinMode(12, OUTPUT); pinMode(10, OUTPUT); pinMode(A1, INPUT); Serial.begin(9600); } void loop() { temp = analogRead(A1); grad = (temp / 1023.0) * 5.0 * 1000 / 10; Serial.println(grad); if (grad > 24) { digitalWrite(12, HIGH); digitalWrite(10, LOW); } if (grad < 24) { digitalWrite(12, LOW); digitalWrite(10, HIGH); } delay(1000); }
Spiegazione del codice per calibrazione dei sensori LM35 Arduino:
- l’istruzione condizionale if ci permette di definire un’azione sotto una condizione vera.
Conclusioni. Questo modulo è economico, molto facile da usare con i microcontrollori ed estremamente affidabile, in quanto fornisce una misura di temperatura più accurata rispetto al termistore ntc. La temperatura misurata dal sensore è proporzionale alla tensione della sua uscita analogica. Affinché l’LM35 possa misurare temperature negative, deve essere alimentato con una tensione negativa, che Arduino non è in grado di fornire.
Lascia un commento